|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
1. 我写成这样执行p(123)为什么会提示出错int is not iterable?
def p(string):
list1 = list(string)
list2 = reversed(list1)
print('list1: ', list1)
print('list2: ', list(list2))
if list1 == list(list2):
return 1
else:
return 0
2.为什么加了input函数后就不会出错?还有为什么这样执行后list1和list2会重复打印2次,我只想打印一次
def p(string):
list1 = list(string)
list2 = reversed(list1)
print('list1: ', list1) #为什么会重复打印多一次
print('list2: ', list(list2)) #为什么会重复打印多一次
if list1 == list(list2):
return 1
else:
return 0
string = input('Please type in a sentence: ')
p(string)
if p(string) == 1:
print(string, 'is palindrome')
else:
print(string, 'is not palindrome')
1. 我写成这样执行p(123)为什么会提示出错int is not iterable?
因为整形本来就不能直接转换为list,你应该这样写 p('123')
2.为什么加了input函数后就不会出错?还有为什么这样执行后list1和list2会重复打印2次,我只想打印一次
因为input返回的str类型,也就是形如 '123'
你下面的代码调用了两次 p
|
|