'str'对象没有属性'pop'

时间:2018-07-07 21:59:19

标签: python

  

AttributeError:'str'对象没有属性'pop'

a = input('enter a list : ')
p = 2
i = 0
l = len(a)
while l>0:
    i = (p+i)%l
    print(a.pop(i))
    l -= 1

1 个答案:

答案 0 :(得分:3)

a被分配了input()返回的字符串,因此您需要先将其转换为列表,然后才能在其上使用诸如pop()之类的列表方法。

例如,通过使用a.split(),您可以将a视为由空格分隔的字符串:

a = input('enter a list : ')
n = a.split()
p = 2
i = 0
l = len(n)
while l>0:
    i = (p+i)%l
    print(n.pop(i))
    l -= 1

样本输入和输出:

enter a list : 3 5 2 1
2
5
1
3
相关问题