python - 如何在不执行数学运算符的情况下接受它们?

标签 python

我的用户必须输入电话号码。如果用户在引号中输入数字,我的代码工作正常,但如果用户在没有引号的情况下输入它,那么 Python 将使用算术计算输入的数字,接受破折号 (-) 作为减号。我该如何解决这个问题?

代码

str(input("enter a phone number please"))

结果

enter a phone number please387-888-8992 '-9493'

预期结果

enter a phone number please387-888-8992
>>>'387-888-8992'

最佳答案

使用 raw_input() function而不是 input()

input() 等价于eval(raw_input());它试图将所有输入解释为 Python 表达式。 raw_input() 只是将用户输入作为字符串返回。

关于python - 如何在不执行数学运算符的情况下接受它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22207997/

相关文章:

python - 从字节文件中打开 PIL 图像

Python 异步流 API

python - 等待后 future 引发 TypeError

python - 使用装饰器将所有 Unicode 字符串转换为二进制字符串是一种好习惯吗?

python - Pandas :计算时间范围内的平均值

python - 从单行 pandas DataFrame 中提取值

python - pandas 仅替换列的一部分

python - setGridSize(...) 和文本省略

python - Pycharm 包含太多库

python - 使用 Elasticsearch 获取日志文件