在python中用字符串打印偶数字符

时间:2018-12-13 20:25:56

标签: python-3.x

exec

此代码无效,这是什么问题?

3 个答案:

答案 0 :(得分:2)

您正在尝试遍历int (len(s)) 我认为您只是在缺少range函数

s = 'Abrakadabra'
for k in range(len(s)):
  if k%2==1:
    print(s[k])

也可以通过以下方式完成许多模拟版本:

>>> s[1::2]
'baaar'

让我们分解一下:

s[1: :2]
^ ^ ^ ^
|-|-|-|--- string to use
  |-|-|--- index to start from (1 for even, zero or ' ' for odd)
    |-|--- index to stop at - space means "till the end"
      |----step to take - 2 for every second, 3 for every third and so on 

答案 1 :(得分:1)

您要遍历range的{​​{1}}

len(s)

甚至更简单的pythonic方法是

s = 'Abrakadabra'
for k in range(len(s)):
  if (k%2==1):
    print(s[k])

答案 2 :(得分:0)

您缺少range来进行遍历:for k in range(len(s)): ...

您还可以使用enumerate

s = 'Abrakadabra'

for i, x in enumerate(s):
    if i % 2 == 1:
        print(x)