【问题标题】:Print what is the lowest number without lists, tuples and dictionaries打印没有列表、元组和字典的最小数字是多少
【发布时间】:2023-01-27 23:17:42
【问题描述】:

我可以使用 for 循环、while 和 if 语句。我正在为如何做到这一点而苦苦挣扎。我试过使用这个但是有一个元组。 Canada_tax、Norway_tax、USA_tax 和Denmark_tax 都有值,计算在这段代码之上。

min_tax = (canada, norway_tax, USA_tax, denmark_tax)
     min = min_tax[0]
     for i in min_tax:
        if i < min:
            min = i
     print(f'Lowest tax: {min}')
     
     if min == canada :
        print('Canada')

     if min == denmark_tax :
        print('Denmark')

     if min == norway_tax :
        print('Norway')

     if min == USA_tax :
        print('USA')
     print()

我想要发生的是:

收入:100万
最低税:150000.0
美国
收入:6000
最低税:1500.0
丹麦 挪威 美国
收入:-1

当这些国家的税收最低时,它应该按字母顺序打印出来。

【问题讨论】:

  • 这些限制的措辞很奇怪——我不明白为什么你会在这里使用 for 或 while 循环,例如,而没有要迭代的集合。也就是说,听起来你的老师只是想要一个 if 语句的地狱 - if canada &gt; usa &amp;&amp; canada &lt; norway &amp;&amp; ...
  • 是的,听起来像那样。

标签: python loops for-loop if-statement tuples


【解决方案1】:

我以前用过这个,但认为是一团糟:

#   Print lowest tax
     if canada <= norway_tax and canada <= USA_tax and canada <= denmark_tax:
        print(f'Lowest tax: {canada}')
        print('Canada')
     if norway_tax <= canada and norway_tax <= USA_tax and norway_tax <= denmark_tax:
        print(f'Lowest tax: {norway_tax}')
        print('Norway')
     if USA_tax <= canada and USA_tax <= norway_tax and USA_tax <= denmark_tax:
        print(f'Lowest tax: {USA_tax}')
        print('USA')
     if denmark_tax <= canada and denmark_tax <= norway_tax and denmark_tax <= USA_tax:
        print(f'Lowest tax: {denmark_tax}')
        print('Denmark')

它有效但如果国家有相同的最低税则无效,我可以做些什么来使这项工作,应该是这样的:

Income: 1000000
Lowest tax: 150000.0
USA
Income: 6000
Lowest tax: 1500.0
Denmark Norway USA
Income: -1

【讨论】:

    猜你喜欢
    • 2015-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-11
    • 2021-08-14
    • 2015-10-03
    • 1970-01-01
    • 2015-10-04
    相关资源
    最近更新 更多