2014-09-21 61 views
0

所以我已經被分配到用python編寫一個程序,提示用戶輸入一個單詞,然後按順序刪除單詞中的字母。在第一行中的第一個字母,第二個在第二等該程序的累加器中缺少的步驟是什麼?

例如,對於「亞特蘭大」:

tlanta 
alanta 
atanta 
atlnta 
atlata 
atlana 
atlant 

這是我的本錢和語義,它沒有做望其項揹我想要什麼。我想很明顯,問題在於for循環的第一行和第二行。我不知道該怎麼做。

+0

我不明白問題的陳述,你能描述它嗎? – squiguy 2014-09-21 00:31:50

+0

@squiguy會做。 Gimmie一秒鐘。 – aero26 2014-09-21 00:37:30

+0

另外,說「它沒有做任何接近我想要的東西!」不是很有幫助。總是試圖描述(或者更好的是,只是複製和粘貼......)你想要它做什麼,它做了什麼(包括用traceback粘貼一個異常,如果它是這樣做的),並且如果它不明顯,什麼是關於他們不同。 – abarnert 2014-09-21 00:46:42

回答

1

問題是這樣的:

end = word - letter 

這裏,word是一個字符串,如atlantaletter是一個數字,像2。你期望減去他們做什麼?

你想要做的是得到atlanta的所有字母,除了#2,對吧?你通過切片來做到這一點。有了這些值,word[:letter]將爲您帶來'at',而word[letter:]將爲您帶來'lanta'。你應該能夠弄清楚如何得到你真正想要的東西,'anta'

而且一旦您有'at''anta',您需要添加的所有內容都與+連接,然後打印結果。

0

你可以認爲它像這樣:

您可以通過打印整個字,除了從一個字母,多次的是由單詞的字母數的過程中需要循環。

因此,這將是這樣的:

word = raw_input("Enter word:") 

for i in range(len(word)):  # loop as many times as the number of letters 
    print word[:i] + word[i+1:] # print all letters but the current iteration's 
相關問題