gpt4 book ai didi

python - 我正在尝试添加一个 if 语句来检查输入是否是带有 python3 的字符串,无论如何在传递参数时返回错误

转载 作者:行者123 更新时间:2023-11-28 18:57:12 24 4
gpt4 key购买 nike

我是一名学习如何编码的初学者。我编写了以下代码,因为我正在尝试学习如何处理输入是字符串而不是数字的问题。

目前正在运行Python3.7.3,我尝试使用.isalpha()。我首先尝试了 if numOfGuests.isalpha:numOfGuests == str(numOfGuests) 但它们也不起作用。 intellisense 告诉我第 8 行有语法错误,if 有下划线。为什么?我还在学习,所以我不确定我做错了什么

name = ''

while not name:
print('Enter your name ')
name = input()
print ('How many guests will you have')
numOfGuests = input()
if numOfGuests == str(numOfGuests)
print('those are letters, not numbers')
else:
pass
if numOfGuests == int()
print('Be sure that you have enough room for all your guests')
print('Done')

我希望系统只打印“这些是字母,而不是数字”,然后从“你有多少客人”开始

错误信息:

SyntaxError: invalid syntax
PS C:\Users\name\Desktop\python> cd 'c:\Users\name\Desktop\python'; ${env:PYTHONIOENCODING}='UTF-8'; ${env:PYTHONUNBUFFERED}='1'; & 'C:\Python\Python37\python.exe' 'c:\Users\name\.vscode\extensions\ms-python.python-2019.6.22090\pythonFiles\ptvsd_launcher.py' '--default' '--client' '--host' 'localhost' '--port' 'omitted for security' 'c:\Users\name\Desktop\python\truthy and falsey.py' Traceback (most recent call last):
File "c:\Users\name\.vscode\extensions\ms-python.python-2019.6.22090\pythonFiles\ptvsd_launcher.py", line 43, in <module>
main(ptvsdArgs)
File "c:\Users\name\.vscode\extensions\ms-python.python-2019.6.22090\pythonFiles\lib\python\ptvsd\__main__.py", line 434, in main
run()
File "c:\Users\name\.vscode\extensions\ms-python.python-2019.6.22090\pythonFiles\lib\python\ptvsd\__main__.py", line 312, in run_file
runpy.run_path(target, run_name='__main__')
File "C:\Python\Python37\lib\runpy.py", line 261, in run_path
code, fname = _get_code_from_file(run_name, path_name)
File "C:\Python\Python37\lib\runpy.py", line 236, in _get_code_from_file
code = compile(f.read(), fname, 'exec')
File "c:\Users\name\Desktop\python\truthy and falsey.py", line 8
if numOfGuests == str(numOfGuests)
^
SyntaxError: invalid syntax

最佳答案

除了评论中提出的其他问题之外,您还假设使用 str()int() 等类型进行测试会告诉您字符串变量。那不是一个有效的想法。这是我能想到的最直接的代码版本,它可以满足我的要求:

name = ''

while not name:
print('Enter your name ')
name = input()
print ('How many guests will you have')
numOfGuests = input()
if not numOfGuests.isdecimal():
print('those are letters, not numbers')
else:
print('Be sure that you have enough room for all your guests')
print('Done')

这里还有很多可以改进的地方,但我认为让你着手实际运行的东西将有助于你继续学习。例如,有更好的方法来检查有效的数字输入。

关于python - 我正在尝试添加一个 if 语句来检查输入是否是带有 python3 的字符串,无论如何在传递参数时返回错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56916768/

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