Python 如何让isalnum代码针对特定问题工作?
我已经应用了以下代码:Python 如何让isalnum代码针对特定问题工作?,python,typeerror,Python,Typeerror,我已经应用了以下代码: my1name = 'Alicia' my2name = 'Shifflett' yearP = '2019' my1nameSpace = my1name + '' print(my1name.isalnum()) print(my1name.isalnum()) print(yearP.isalnum()) 任务希望我将isalnum()应用于字符串my1name+my2name。我尝试了以下方法: print(my1name+my2name.isalnum())
my1name = 'Alicia'
my2name = 'Shifflett'
yearP = '2019'
my1nameSpace = my1name + ''
print(my1name.isalnum())
print(my1name.isalnum())
print(yearP.isalnum())
任务希望我将isalnum()应用于字符串my1name+my2name。我尝试了以下方法:
print(my1name+my2name.isalnum())
但是我不断得到错误:TypeError:只能将str(而不是“bool”)连接到str
如何正确键入以使其正常工作?优先顺序很重要
(my1name+my2name).isalnum()
当您编写my1name+my2name.isalnum()
时,发生的是my2name.isalnum()
首先得到求值,它返回True
,然后my1name+True
得到求值,因此解释@hansolo的代码时出错,您的错误在于首先计算my2name.isalnum()
(即True
),然后尝试将my1name
添加到True
,这就是导致错误的原因。添加的括号告诉python首先计算字符串连接,以避免类型错误。