编写将输入行作为字符串读取的程序,并在Python中打印字符串的每个第二个字母?
到目前为止,我写过:
string=input('Enter String: ')
for char in range(0,len(string),2):
print(len(char))
如果我输入一个字符串:qwerty
它应该打印" qet
"
答案 0 :(得分:4)
你需要比这简单得多。如果您输入一个单词并希望将其切片到特定点,请使用切片。
您的条件:qwerty it should print "qet"
所以,你打算打印每一个字母:
>>> a = "querty"
>>> a[::2]
'qet'
切片的工作原理如下:
[from start: from end: step]
因此,在您的情况下,您希望每秒打印一次,因此您想要使用step
。因此,只需将start
和end
留空即可,因为您希望将自己定位在字符串的开头,然后只需每秒进行一次。这是使用[::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="")