【问题标题】:Temperature conversion fahrenheit to celsius vice versa python将华氏温度转换为摄氏度,反之亦然 python
【发布时间】:2021-10-14 05:19:23
【问题描述】:

您好,我正在尝试制作一个程序,该程序采用摄氏度或华氏度的值并将它们放入列表中并将它们转换为另一个值,然后显示输出。我被困在将华氏温度到摄氏度的公式应用到列表中。这是我的代码。

if temp == "F":
input_string = input('Enter Fahrenheit values for conversion to celsius separated by space ')
print("\n")
my_list = input_string.split()
print('list:', my_list)
for i in range(len(my_list)):
    my_list[i] = int(my_list[i])
    print("These temperatures in Celsius are...: ", (x - 32) * 5/9 for x in [my_list],)

【问题讨论】:

  • 将列表推导括在方括号中,您甚至可以使用print("These temperatures in Celsius are...: ", [(int(x) - 32) * 5/9 for x in my_list]) 放弃for 循环

标签: python split list-comprehension


【解决方案1】:

您并没有遗漏很多东西,几乎只是一些语法错误。在执行初始操作时,您也不需要一个完整的循环来进行类型转换。

if temp == "F":
    input_string = input('Enter Fahrenheit values for conversion to Celsius separated by space ')
print("\n")
my_list = input_string.split()
print('list:', my_list)

print("These temperatures in Celsius are...: ", [(int(x) - 32) * 5/9 for x in my_list])

只需确保您已将 list comp 语句全部封装,并且不要将列表放在方括号中。如果您只想将度数精确到小数点后 2 位,也可以使用round(value, 2)

要四舍五入,只需像这样写理解

[round((int(x) - 32) * 5/9, 2)  for x in my_list]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-06
    • 2016-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多