簡體   English   中英

Python:打印句子的第三個字母

[英]Python: Printing Third Letter of Sentence

def main (): 
    sentence=input("Please enter a sentence:")
    print("Original Sentence:",sentence)
    sentencelenght=len(sentence)
    for i in range(0, sentencelenght, 3): 
        print("Every third letter:", i)
main()

我在這一點上,我的輸出是一堆數字,請解釋​​如何解決此問題。

請注意,我們已經為while循環學習了if / or語句,這是更基本的內容。 沒什么復雜的。

這是因為您使用的是i ,而不是該位置的字符。 將該行更改為此:

print("Every third letter:", sentence[i])

但是,這不是打印每三個字母的最有效方法。 您不需要循環; 只需使用print(sentence[::3]) 之所以可行,是因為切片是[start:stop:step] 我們將start保留為空,因此默認為開始。 我們將stop保留為空,因此默認為末尾。 step ,我們將其定義為3 ,因此它從頭到尾使用第三個字母。

您可以使用切片來打印每第三個字母(從第一個字母開始):

print(sentence[::3])

我假設您不能使用切片,而需要使用自己的代碼,如果您要從第三個字符開始打印每第三個字符,請將范圍從2開始,並保持3步通過循環打印每個sentence[i]

def main ():
    sentence = input("Please enter a sentence:")
    print("Original Sentence:",sentence)
    # start at the third character
    for i in range(2,  len(sentence), 3):
        # access the string by index 
        print("Every third letter:", sentence[i])

輸出:

In [2]: main()
Please enter a sentence:001002003
Original Sentence: 001002003
Every third letter: 1
Every third letter: 2
Every third letter: 3

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM