您被要求確保人們的名字和姓氏在他們的護照中以大寫字母開頭。例如,alison heck > 應正確大寫為Alison Heck。 注意在一個單詞中,只有第一個字符大寫。示例 12abc 大寫時仍為 12abc。
一個測驗用例失敗,即輸入(stdin)
1 w 2 r 3g
預期產出
1 W 2 R 3g
我的輸出
1 W 2 R 3G
請改進此代碼
import math
import os
import random
import re
import sys
def solve(s):
x = re.sub("[^A-Za-z0-9]", " ", s)
a = x.title()
return a
if __name__ == '__main__':
fptr = open(os.environ['OUTPUT_PATH'], 'w')
s = input()
result = solve(s)
fptr.write(result '\n')
fptr.close()
uj5u.com熱心網友回復:
您可以split在空格上輸入,然后使用capitalize,這會將每個字串的第一個字符轉換為標題大小寫。然后你可以join再次將單詞放在一起。例如:
inp = '1 w 2 r 3g'
res = ' '.join(s.capitalize() for s in inp.split())
輸出:
1 W 2 R 3g
uj5u.com熱心網友回復:
嘗試一個簡單的回圈,如果前面有空格,則將字符大寫。
x = re.sub("[^A-Za-z0-9]", " ", s)
a = x[0]
for i in range(1, len(x)):
if x[i - 1] == " ":
a = a x[i].title()
else:
a = a x[i]
return a
輸出是:
1 W 2 R 3g
uj5u.com熱心網友回復:
你不能就str.title()這個嗎?沒有大寫數字這樣的東西,所以”123abc”.title()仍然應該產生你想要的結果。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/516506.html
下一篇:如何翻轉字串中的偶數和奇數元素?
