打印結果最近我一直在研究我的一個小項目,但我遇到了一個問題,我被卡住了。我已經查過了不同的地方,但是我找不到我要找的東西。這是我的代碼:只有當字符串項目索引==列表項目索引
special_alphabet = [a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u,
v, w, x, y, z]
alphabet = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k','l', 'm', 'n',
'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
name = input('Please insert your name: ')
item_alphabet = -1
item_special_alphabet = -1
index = -1
for item in name:
item_alphabet = item_alphabet + 1
item_special_alphabet = item_special_alphabet + 1
index = index + 1
if alphabet[item_alphabet] == name[index]:
print(special_alphabet[item_special_alphabet])
的special_alphabet
列表包含了我對變量的特殊字符。我沒有展示它們,因爲它們太長了,但它們在那裏。
我現在遇到的問題是,當我運行此代碼並鍵入我的輸入時,它確實檢查了我插入的'name'(字符串),它只是按照列表的順序(基本上是字母)。所以當我輸入:Amine
時,它只返回A的特殊字符(因爲它是字符串和列表中的第一個(0))和E(同樣的原因,只是第五個)。尋找的是如何在沒有任何順序的情況下通過整個列表並在運行if
聲明並打印出特殊字符之前檢查其中的所有項目。 預先感謝您。
嘗試使用字典作爲查找而不是2列表,其中您的常規字母表是關鍵和特殊的價值。 –
@IljaEverilä,是的,我絕對沒有想到,它可以更好地組織代碼和所有,但這並不真正回答我的問題......無論如何感謝 –
你是btw期待只打印「翻譯」字符,如你的例子,或整個字符串,但翻譯?你可以用''str.maketrans()'](https://docs.python.org/3/library/stdtypes.html#str.maketrans)和'str.translate()'代替它。 –