为什么输入36c的时候还会运行第一个条件呢(关键词-输入带)

t=input("请输入带有符号的温度值:")
if t[-1] == 'f' or 'F':
    c=(eval(t[:-1])-32)/1.8
    print("转换后的温度为{:.2f}C".format(c))
elif t[-1] =="c" or 'C':
    f=eval(t[:-1])*1.8+32
    print("转换后的温度为{:.2f}F".format(f))

为什么输入36c的时候还会运行第一个条件呢

请输入带有符号的温度值:36c
转换后的温度为2.22C

这段代码实现的是摄氏度与华氏度的转换,它接收一个带有单位的温度值,如果单位是"f"或"F",那么它将这个华氏度值转换为摄氏度,并以"C"为单位输出;如果单位是"c"或"C",那么它将这个摄氏度值转换为华氏度,并以"F"为单位输出。

不过有一些细节需要修正:

判断单位的语句有误,应该改为:

if t[-1] == 'f' or t[-1] == 'F':

同理,如果单位是"c"或"C",判断语句应该改为:

elif t[-1] =="c" or t[-1] == 'C':


修正完这两个细节后,代码应该是这样的:

t=input("请输入带有符号的温度值:")
if t[-1] == 'f' or t[-1] == 'F':
    c=(eval(t[:-1])-32)/1.8
    print("转换后的温度为{:.2f}C".format(c))
elif t[-1] =="c" or t[-1] == 'C':
    f=eval(t[:-1])*1.8+32
    print("转换后的温度为{:.2f}F".format(f))
```python



```

-----“chatgpt”