6 回答
TA貢獻(xiàn)1794條經(jīng)驗(yàn) 獲得超8個(gè)贊
上述問題的完美解決方案是 for 循環(huán)。for 循環(huán)基本上遍歷集合/字符串中的每個(gè)特定元素并對(duì)該元素執(zhí)行某些操作。在您的情況下,您想要打印出每個(gè)元素。一個(gè)例子是:
#your string
sample = "this is a sample sentence";
#iterate over each character inside of your string
for character in sample:
#print the current character that the iteration is on
print (character);
這會(huì)給你結(jié)果:

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超13個(gè)贊
如果你想讓它按順序打印,你遇到的問題是:
range你正試圖在str它期望的時(shí)候使用int您正在嘗試打印該功能,該功能不會(huì)打印字母這是已修補(bǔ)的錯(cuò)誤
def show_letters(word):
for letter in word:
print(letter)
show_letters("Hello")
"""
Output:
H
e
l
l
o
"""
它也可能看起來(lái)像你試圖反過來(lái)做。reversed這可以使用Python中的方法來(lái)實(shí)現(xiàn):
def show_letters(word):
for letter in reversed(word):
print(letter)
show_letters("Hello")
"""
Output:
o
l
l
e
H
"""
TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超9個(gè)贊
下面的代碼就是答案,你需要在 def 下和 for 下以及 if 下分開制表符
def show_letters(word):
for letter in word:
print(letter)
show_letters("Hello")

TA貢獻(xiàn)1911條經(jīng)驗(yàn) 獲得超7個(gè)贊
For循環(huán)是python中強(qiáng)大的循環(huán)之一,可以以不同的方式使用。
您可以使用 for 循環(huán)以兩種基本方式訪問迭代器的元素。
語(yǔ)法 1:
for element in iterator:
print(element)
語(yǔ)法 2:
for i in range(len(iterator)):
print(iterator[index])
這里迭代器是python中的任意變量,我們可以在其上申請(qǐng)循環(huán)。簡(jiǎn)單來(lái)說,您可以說迭代器是一個(gè)變量,其中可以包含多個(gè)變量,例如字符串、列表、元組數(shù)據(jù)類型等。
因此,您可以使用上述任何一種方式來(lái)解決您的問題,即。
def show_letters(word):
for letter in word:
print(letter)
show_letters("Hello")
它將生成所需的輸出:
TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超9個(gè)贊
我的建議是從不使用函數(shù)的程序開始。實(shí)現(xiàn)想法后,如有必要,將代碼放入函數(shù)中。例如,在這種情況下,我會(huì)開始
for letter in "hello":
print(letter)
然后你可以將它嵌入到一個(gè)函數(shù)中
def show_letters(word):
for letter in word:
print(letter)
show_letters("Hello")
TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超6個(gè)贊
您只需按如下方式遍歷函數(shù)內(nèi)的單詞即可輕松完成此操作 -
正確的代碼 -
def show_letters(word):
for letter in word:
print(letter )
show_letters("Hello")
輸出 :
H
e
l
l
o
您的代碼錯(cuò)誤 -
首先,你的縮進(jìn)是錯(cuò)誤的。您需要使用制表符正確縮進(jìn),否則在嘗試運(yùn)行代碼時(shí)會(huì)出現(xiàn)錯(cuò)誤。
更正縮進(jìn)后,您的代碼甚至?xí)霈F(xiàn)錯(cuò)誤 -
def show_letters(word):
for word in range(word,1):
print(show_letters)
在上面的代碼中,該行for word in range(word,1):沒有意義并且會(huì)出錯(cuò)。您不能在range(). 您應(yīng)該重新檢查 python 文檔中的范圍語(yǔ)法。這print(show_letters)也是錯(cuò)誤的,這一切都不會(huì)給你正確的結(jié)果。
添加回答
舉報(bào)
