0
我的函數會隨機翻轉除第一個和最後一個字符之外的一個單詞的2個字符。我想用這個函數來編寫另一個函數build_sentence(string)
,它使用我的函數來翻譯句子中每個單詞的2個字符。函數build_sentence(string)
應該返回一個字符串,其中包含整個句子,其中每個單詞的字母已被scrambled(word)
加擾。Python - 翻轉一個句子中每個單詞的2個字符
例如:
I dn'ot gvie a dman for a man taht can olny sepll a wrod one way. (Mrak Taiwn)
import random
def scramble(word):
i = random.randint(1, len(word) - 2)
j = random.randint(1, len(word) - 3)
if j >= i:
j += 1
if j < i:
i, j = j, i
return word[:i] + word[j] + word[i + 1:j] + word[i] + word[j + 1:]
def main():
word = scramble(raw_input("Please enter a word: "))
print (word)
main()
你的邏輯目前看起來不完整,如果用戶輸入一個3個字母的單詞,爲什麼如果'i'大於1就加1到'j'? – depperm