我在python中编写了这段代码来大写并打印任何字符串的前4个字符。但我得到的输出是:
A
P
P
L
我需要的输出是:
APPL
我应该在这做什么改变?
def capital(uinput):
slice4 = uinput[:4]
for i in slice4:
j = ord(i)
j = j - 32
k = chr(j)
print k
print capital("apple")
答案 0 :(得分:5)
如何使用upper()
?
>>> s = "apple"
>>> s[:4]
'appl'
>>> s[:4].upper()
'APPL'
谈到您编写的代码,您可以通过这种方式对其进行修改以使其正常工作:
def capital(uinput):
slice4 = uinput[:4]
result = ""
for i in slice4:
j = ord(i)
j = j - 32
k = chr(j)
result += k
print result
或者,相同但在一行中没有其他变量:
def capital(uinput):
print "".join([chr(ord(i) - 32) for i in uinput[:4]])