Python字符串处理求助:C转Python用户实现大小写转换与反转
解决你的Python姓名处理问题
嘿,从C转Python的话,你会发现很多字符串操作都不用像C那样手动逐个字符处理啦,Python给你封装了好多实用方法!你已经完成了转小写和反转的核心步骤,剩下的就是把反转后的字符串首字母大写,我来帮你补全并优化代码~
先补全你现有的代码
你已经写好了反转函数rev,也完成了转小写和反转操作,只需要在最后加上首字母大写的步骤,再输出结果就行:
first_name = input("enter your first name\n") last_name = input("enter your last name\n") first_name = first_name.lower() last_name = last_name.lower() def rev(s): str = "" for i in s: str = i + str return str first_name = rev(first_name) last_name = rev(last_name) # 新增:把反转后的字符串首字母大写,其余保持小写 first_name = first_name.capitalize() last_name = last_name.capitalize() # 输出结果 print(f"{first_name} {last_name}")
用Python内置方法简化代码
其实Python里字符串反转不用手动写循环,用切片语法s[::-1]就能一行搞定反转,再结合lower()和capitalize(),可以把代码简化得更简洁:
first_name = input("enter your first name\n").lower()[::-1].capitalize() last_name = input("enter your last name\n").lower()[::-1].capitalize() print(f"{first_name} {last_name}")
给你解释下每个方法的作用:
lower():把整个字符串转为小写,和你原来的操作一致[::-1]:Python的切片技巧,[起始索引:结束索引:步长],步长为-1时就会从字符串末尾往前取,实现反转capitalize():自动把字符串的第一个字符转为大写,其余字符转为小写(这里因为已经用lower()处理过了,所以其余字符本来就是小写,刚好符合需求)
这样不管输入的姓名是大写、混合大小写,都能完美处理成你想要的格式~
内容的提问来源于stack exchange,提问作者Manash Sharma
相关产品推荐
相关产品推荐

