【发布时间】:2021-08-08 07:46:32
【问题描述】:
您需要确保护照中的姓名以大写字母开头。例如,alison heck 应正确大写为 Alison Heck。
我试过的代码:
def solve(s):
words = s.split()
flag = False
for word in words:
if isinstance(word[0], str):
flag = True
else:
flag = False
if flag:
return s.title()
else:
# don't know what to do
s = input()
print(solve(s))
此代码在大多数情况下都可以正常工作,除了一种情况,
令人沮丧的测试用例:'1 w 2 r 3g', 并且输出应该是'1 W 2 R 3g', 但由于我们使用的是 .title() 方法,所以最后一个 'g' 也会大写。
【问题讨论】:
-
@BuddyBob Lol,那一定是 Elon 家族的。
-
@BhavyaParikh 如果我们拆分,那么我们应该将其加入,但我无法维护输入中的确切空格,例如(将“_”视为空格):-“hello___world hi ",预期的输出是:- "Hello___World Hi" ,但是当我拆分和加入时,我会得到这样的结果:- "Hello World Hi"
-
是的,我没有想到那种情况!
标签: python python-3.x function return output