#when I run it, it says something about a function discrimination being at 0x0E....
import string
import sys
code = raw_input("Enter your code: ")
translation = {"a": "d", "b": "e", "c": "f", "d": "g", "e": "h", "f": "i", "g": "j", "h": "k", "i": "l", "j": "m", "k": "n", "l": "o", "m": "p", "n": "q", "o": "r", "p": "s", "q": "t", "r": "u", "s": "v", "t": "w", "u": "x", "v": "y", "w": "z", "x": "a", "y": "b", "z": "c"}
lettered_code = list(code)
def translate(lettered_code):
newanswer = ""
for letters in lettered_code:
newanswer += translation[letters]
return newanswer
def checking(translate):
return all((char in string.letters) for char in translate)
def discrimination(translate):
if checking == False:
print "Only letters!"
else:
print translate(lettered_code)
sys.exit()
print discrimination
-1
A
回答
1
可以使用isalpha
方法來檢查它是否是一個字母
translation = {"a": "d", "b": "e", "c": "f", "d": "g", "e": "h", "f": "i", "g": "j", "h": "k", "i": "l", "j": "m", "k": "n", "l": "o", "m": "p", "n": "q", "o": "r", "p": "s", "q": "t", "r": "u", "s": "v", "t": "w", "u": "x", "v": "y", "w": "z", "x": "a", "y": "b", "z": "c"}
s = 'this is a test 123 that has numbers456 in the wr48ds'
newS = ''
for letter in s:
if letter.isalpha():
newS += translation[letter]
else:
newS += letter
>>> newS
'wklv lv d whvw 123 wkdw kdv qxpehuv456 lq wkh zu48gv'
+0
我不認爲他想讓數字通過,所以也許不需要else語句來將它們添加到新字符串中...也許:打印「只有字母!」和exit() – whitebeard 2014-08-28 02:38:56
0
你print discrimination
正在打印功能對象!
你不應該調用轉換爲歧視的一種變量......像這樣:
def discrimination():
if checking == False:
print "Only letters!"
else:
print translate(lettered_code)
sys.exit()
discrimination() # don't need the print statement here either
但這隻會讓你那麼遠,它的工作原理,只要你只輸入字母.. 。 您應該考慮重做所有這些功能。
相關問題
- 1. 從字符串中刪除非字母數字字符
- 2. 如何清除字符串中連續的非字母字符?
- 3. 如何從字符串中去除非字母數字字符(包括空格)?
- 4. 如何從SQL Server中的字符串中去除所有非字母字符?
- 5. 如何從REGEX中的字符串中排除2個字母字符
- 6. 從字符串中刪除所有非字母,非數字字符?
- 7. 如何刪除列中的非字母數字字符?
- 8. 對非字母字符排序
- 9. 除去大部分從字符串非字母字符的elisp
- 10. 如何從PHP中的字符串中刪除所有非字母數字和非空格字符?
- 11. 如何刪除任何非字母數字字符?
- 12. 如何從字符串中刪除所有字母字符?
- 13. 如何使用visual foxpro從名稱字段中刪除非字符字母
- 14. 從命令行中刪除VBScript中的非字母字符
- 15. 非字母字符
- 16. 如何從字符串中刪除所有字符,從第一個非字母字符開始?
- 17. 從非空白字符串中排除逗號字符
- 18. 正則表達式從UTF8字符串中刪除非字母數字字符
- 19. 從lua字符串中刪除所有非字母數字字符
- 20. Sprache:如何從數字匹配中排除字母?
- 21. Python從字符串中刪除字母
- 22. 從字符串中刪除字母
- 23. VBScript從字符串中移除字母
- 24. Python:刪除非字母字
- 25. 刪除訪問字段中的非字母數字字符
- 26. 如何與假字符中的非字母字符交換
- 27. 如何在數組字符串中搜索非字母字符?
- 28. 如何從C++中的字符串中去除所有非字母數字字符?
- 29. 如何從數組中的字符串中刪除字母?
- 30. URL中的非字母數字字符
請格式化您的代碼併發布** exact **錯誤消息。 – 2014-08-28 01:06:57
'print discrimination(translate('asdf'))' – inspectorG4dget 2014-08-28 01:07:49
「功能區分在0x01E8D5F0」 – Merg 2014-08-28 01:09:21