2017-10-21 39 views
-7

我知道這已被其他人問過,但我從來沒有理解過這個代碼,我猜這個有點不同。所以我需要在我的python程序中從變量「points」中刪除5個點的代碼。例如:如果密碼是qwert123,那麼有3個組合「qwe」,「wer」,「ert」,並刪除15個點。 請幫助我,我需要一個最簡單的語言,所以我可以理解它。萬分感謝!如何讓程序檢測QWERTY鍵盤佈局中的連續字母?

user_password = input() 
    password = int(len(user_password)) 
+0

您是否嘗試過其他代碼? –

+0

此問題太廣泛 – Gibolt

+2

其他人的鏈接問題在哪裏?你還沒有理解那裏的答案?具體來說,「給代碼」方法對SO沒有幫助。如果你願意學習,人們會幫助你,如果你只是想要代碼,請僱人爲你編寫代碼。 – cinnaroll45

回答

0

對此問題的解決方案可以找到here

它適應手頭的問題,下面的代碼會做你需要什麼:

qwertyKeyboard = ['qwertyuiop', 'asdfghjkl', 'zxcvbnm'] 
user_password = input("enter password") 
points = len(user_password) 

def chunkstring(string): 
    return (string[0+i:3+i] for i in range(0, len(string))) 

for chunk in list(chunkstring(user_password)): 
    if len(chunk) == 3: 
     if chunk in qwertyKeyboard[0] or chunk in qwertyKeyboard[1] or chunk in qwertyKeyboard[2]: 
      print(chunk) 
      points -= 5 

print(points) 

chunkstring功能打破了密碼成字符的塊,然後再由for循環檢查與qwertyKeyboard列表相對應,並從points變量中爲每組找到三個連續字符從中扣除5個點。