Python输入问题
python输入的时候,n=input(),什么时候写成int(input()),什么时候用eval(input),什么时候不用加直接是n=input(),做题的时候运行总是报错,然后改一下那个int、eval就好了,但是不清楚为什么要改{:5_100:} eval('input()') 就等于 input()所以没有必要
至于input返回后用不用int,需要看具体需求
例如语句 n=intpu() 输入8
不int整形的话 n 就是 '8' 是字符串!
int整形后 n 就是 8 是个整数! 青出于蓝 发表于 2022-8-4 17:13
eval('input()') 就等于 input()
所以没有必要
emm意思是输入的时候不用加eval吗{:5_92:} 本帖最后由 临时号 于 2022-8-4 17:25 编辑
input()函数会返回一个字符串类型的值
但是,有时候我们像让程序读到的是一个整数类型的值,可input()函数读到的是字符串类型的,所以我们需要将input()函数读到的值强制转换为整数,所以用到了int()函数,自然写成了int(input())
而eval()函数的作用是执行一个字符串表达式,这个不太好讲,举个例子你就明白了
command = eval(input("请输入命令: "))
程序执行结果
D:\command\Python>python test.py
请输入命令: print("Hello, World!")
Hello, World!
input函数详解->https://www.runoob.com/python3/python3-func-input.html
int函数详解->https://www.runoob.com/python/python-func-int.html
eval函数详解->https://www.runoob.com/python/python-func-eval.html 努力学Python的 发表于 2022-8-4 17:18
emm意思是输入的时候不用加eval吗
5#正解
考虑不周到了,eval函数也是有作用的... 临时号 发表于 2022-8-4 17:23
input()函数会返回一个字符串类型的值
但是,有时候我们像让程序读到的是一个整数类型的值,可input()函数读 ...
我刚才试了一下去掉eval,然后再写print(“hollow,world”),发现打印不出来诶,所以eval在这的意思是执行print这个表达式吗 一般eval()函数新鱼油比较经常用到的地方应该是这个程序
num = int(input("请输入一个数:"))
if num > 10:
print(f"{num}比10大")
elif num < 10:
print(f"{num}比10小")
else:
print(f"{num}就是10")
可是这个程序要是输入小数就会报错,这个时候就可以用eval()
num = eval(input("请输入一个数:"))
if num > 10:
print(f"{num}比10大")
elif num < 10:
print(f"{num}比10小")
else:
print(f"{num}就是10") 努力学Python的 发表于 2022-8-4 17:33
我刚才试了一下去掉eval,然后再写print(“hollow,world”),发现打印不出来诶,所以eval在这的意思是 ...
是的{:10_254:} 努力学Python的 发表于 2022-8-4 17:18
emm意思是输入的时候不用加eval吗
谢谢哦{:5_109:} 青出于蓝 发表于 2022-8-4 17:25
5#正解
考虑不周到了,eval函数也是有作用的...
嗯嗯,我看答案的时候它有的加eval就对然后不加就不对,有点不明白,不过还是谢谢你帮我解答{:5_92:} 临时号 发表于 2022-8-4 17:33
一般eval()函数新鱼油比较经常用到的地方应该是这个程序
可是这个程序要是输入小数就会报错,这个时候就 ...
谢谢,我刚看了一下书,您帮我举得这个例子是它的其中一个功能,怪不得我搞混了,谢谢{:5_95:}
页:
[1]