Skip to main content
 首页 » 编程设计

python之需要在不使用函数的情况下将字符串设为大写

2025年05月04日24shihaiming

我正忙于软件工程训练营。有一个问题我很难回答,特别是因为它特别要求我不要使用函数。这是问题:

声明一个名为hero 的变量等于Super Man
按照以下方式打印出来:

S^U^P^E^R M^A^N 

不要使用任何函数来做这件事

通常我可以使用函数轻松地做到这一点,但现在我完全卡住了

请您参考如下方法:

嵌套列表理解可能有更短的方法,但这可能有效:

lower_to_upper = {'a': 'A', 'b': 'B', 'c': 'C', 'd': 'D', 'e': 'E', 'f': 'F', 'g': 'G', 'h': 'H', 'i': 'I', 'j': 'J', 'k': 'K', 'l': 'L', 'm': 'M', 'n': 'N', 'o': 'O', 'p': 'P', 'q': 'Q', 'r': 'R', 's': 'S', 't': 'T', 'u': 'U', 'v': 'V', 'w': 'W', 'x': 'X', 'y': 'Y', 'z': 'Z'} 
hero = "Super Man" 
string_list = ['^'+lower_to_upper[c] if c in lower_to_upper else '^'+c for c in hero ] 
new_string = "" 
for c in string_list: 
    if c[1] == " ": 
        c = " " 
    new_string += c 
new_string = new_string[1:] 
print new_string 

当然这确实使用内部python函数,如__iter__、__next__、__getattr__、__getitem__ 等等...但是如果你试图深入那个兔子洞,你会发现你实际上无法编写任何 python 代码而不调用至少 一些 隐式或显式函数