我今天有一个作业问题。我的指示是
修改convert.py程序,使其打印摄氏温度表 温度和华氏等效温度从0到100度,步长为 10.将结果格式化为漂亮的列,保留两位小数。
所以我的摄氏温度到华氏度转换器正常工作,但我不知道如何以10为步长来制作表格。
def c2f():
celsius = float(input("What is the Celsius temperature? "))
fahrenheit = 9/5 * celsius + 32
print("The temperature {1} is {0:,.2f} degrees Fahrenheit.".format(fahrenheit, celsius))
c2f()
一旦代码运行,它应该显示两列,其中一列显示摄氏温度,另一列显示华氏温度,每列增加10摄氏度,范围从0到100摄氏度,共10行。
答案 0 :(得分:1)
我在下面提供了一些带注释的代码。
首先初始化摄氏度值列表。 然后,创建一个DataFrame来保存数据。最后,转换摄氏值列表,并将这些值附加到新列下的DataFrame中。
注意:完成这项作业有多种方法。
import pandas as pd
import numpy as np
def c2f(celsius):
print(celsius)
fahrenheit = (9 * celsius / 5) + 32
print("The temperature {1} is {0:,.2f} degrees Fahrenheit.".format(fahrenheit,
celsius))
return fahrenheit
#initialize list of values ranging from 0 through 100 counting by 10s
list_celcius = np.arange(11)*10
#Create DataFrame with column "Celcius"
df = pd.DataFrame({'Celcius': list_celcius})
#Append calculated values into Fahrenheit column in DataFrame
df['Fahrenheit'] = [c2f(list_celcius[i]) for i in range(len(list_celcius))]
print(df)
答案 1 :(得分:0)
一些建议:
input
定义中删除不需要的c2f()
行。print
定义中删除不需要的c2f()
行。celsius
定义中添加一个c2f()
参数。return
定义中添加c2f()
行。您现在可以使用f = c2f(celsius)
函数。
并继续:
celsius
,其值从0到100乘以10。c2f()
。celsius
值和相应的c2f()
值。