gpt4 book ai didi

python - 字符转换器

转载 作者:行者123 更新时间:2023-12-04 08:35:15 24 4
gpt4 key购买 nike

turk = {"Ç":"C","ç":"c","Ğ":"G","ğ":"g","İ":"I","ı":"i",
"Ö":"O","ö":"o","Ş":"S","ş":"s","Ü":"U","ü":"u"}

eng = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz \t1234567890"

space = " "

word = input("Enter a word")


def turkChar (word):
newword = ""
for c in word:
if c in eng:
newword = newword + c
elif c in turk:
newword = newword + turk[c]
else:
newword = newword + space
return newword

我写了这个简单的代码,将土耳其字符转换成英文。我添加了 space 变量来腾出一个空间,但是如果用户想要腾出更多的空间、制表符甚至数字怎么办。我怎样才能做到这一点?

最佳答案

我认为您不应将空格、制表符和数字字符与 eng 字符区别对待。我会简单地像这样扩展你的角色:

eng = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz \t1234567890"
然后我们可以删除“空格”部分,最后得到:
turk = {"Ç":"C","ç":"c","Ğ":"G","ğ":"g","İ":"I","ı":"i",
"Ö":"O","ö":"o","Ş":"S","ş":"s","Ü":"U","ü":"u"}

eng = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz \t1234567890"

word = input("Enter a word")

def turkChar(word, turk):
newword = ""
for c in word:
if c in eng:
newword = newword + c
elif c in turk:
newword = newword + turk[c]
return newword
  • 制表符在字符串中写为 \t
  • 注意到您的 h 字符串中缺少较低的 eng
  • 您将 turk 定义为参数而不是 eng ,要么定义两者,要么都不定义。
  • 如果在 engturk 中都没有找到字符,那么它会被忽略。
  • 关于python - 字符转换器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64831789/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com