编写将输入行作为字符串读取的程序,并在Python中打印字符串的每个第二个字母

时间:2016-03-15 05:26:55

标签: python

编写将输入行作为字符串读取的程序,并在Python中打印字符串的每个第二个字母?

到目前为止,我写过:

string=input('Enter String: ')

for char in range(0,len(string),2):

    print(len(char))

如果我输入一个字符串:qwerty
它应该打印" qet"

2 个答案:

答案 0 :(得分:4)

你需要比这简单得多。如果您输入一个单词并希望将其切片到特定点,请使用切片。

您的条件:qwerty it should print "qet"

所以,你打算打印每一个字母:

>>> a = "querty"
>>> a[::2]
'qet'

切片的工作原理如下:

[from start: from end: step]

因此,在您的情况下,您希望每秒打印一次,因此您想要使用step。因此,只需将startend留空即可,因为您希望将自己定位在字符串的开头,然后只需每秒进行一次。这是使用[::2]

背后的原因

答案 1 :(得分:0)

每隔一个字母应该以索引1而不是0开头。因此,如果你的输入是“qwerty”,你的输出应该是“歪曲”。

以下代码可以回答您的问题。

sentence = input("\nPlease enter a string : ")
print("Every second letter of the string " + sentence + " is ", end="")

for i in range(len(sentence)):
    if i % 2 == 1:
        print(sentence[i] + " ", end="")