gpt4 book ai didi

python - 在 python 中获取安全的用户输入

转载 作者:太空宇宙 更新时间:2023-11-04 10:45:19 25 4
gpt4 key购买 nike

我正在编写一个脚本,需要用户提供一些非常简单的输入,在对此进行研究后,我陷入了两难境地,试图找出最安全的方法来完成它。

我只想要一个整数并偶然发现(我认为是)一段类似于(从内存中执行此操作)的好代码:

def getNumeric(prompt):
while True:
response = input(prompt)
try:
return int(response)
except ValueError:
print "please enter a number:",

这基本上是有效的,但如果用户只是按下 [enter] 然后它就会崩溃。事实证明,我使用的是 python < 3,而作者是为 3+ 编写的。所以现在我必须重写 2.7 以满足我的需要。但是我该如何编写它来满足 EITHER 平台 <3 和 3+ 的需求?

我正在写一些可以被其他人使用的东西,我想让它成为我能做到的最便携的。我应该打扰吗?

顺便说一句,我正在为 Raspberry Pi 做这件事,我应该将我的 python 升级到 3,还是让它留在原处 (2.7.3)?

最佳答案

我的建议是将 Pi 升级到 Python 3。为两个单独的版本开发 Python 代码毫无意义(除非它是一个库,你会使用比共享函数更多的预防措施)。你可以这样做:

# Python 3.x
def getNumeric(prompt):
while True:
try:
res = int(input(prompt))
break
except ValueError:
print("Numbers only please!")
return res

对于 Python 2.7.x,使用 raw_input() 而不是 input()。 Python 2 中的 input() 不被视为保存,因为它评估给定的字符串(并且可能是恶意的)。

关于python - 在 python 中获取安全的用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17760877/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com