Python中计算全名长度时如何排除空格?
Python中计算全名长度时如何排除空格?
嗨,作为Python新手遇到这个问题太正常啦,别着急,其实用几个简单的内置函数就能搞定,完全不用数组!给你分享两个容易理解的方法:
方法一:用replace()删除所有空格
replace()函数可以帮你把字符串里的空格替换成空内容(相当于删掉空格),之后再用len()计算长度就好啦。修改后的代码是这样的:
full_name = input("What is your name?") # 把所有空格替换成空字符串 no_space_name = full_name.replace(" ", "") length_of_full_name = len(no_space_name) print(length_of_full_name)
比如你输入John Smith,replace(" ", "")会把它变成JohnSmith,len()算出来就是9,刚好是名字和姓氏的总字符数~
方法二:用split()+join()拼接无空格字符串
另一个思路是先把全名按空格拆分成名字和姓氏的列表,再把列表里的内容重新拼起来(不加空格),最后算长度。代码示例:
full_name = input("What is your name?") # 按空格分割成列表,再用空字符串拼接起来 no_space_name = "".join(full_name.split()) length_of_full_name = len(no_space_name) print(length_of_full_name)
这里full_name.split()会把John Smith变成["John", "Smith"],"".join(...)就把这两个元素拼成了JohnSmith,同样能得到正确的长度9。
这两个方法都很适合新手,选哪个都可以,看你觉得哪个更好理解~
备注:内容来源于stack exchange,提问作者Rajarshi Mukherjee
相关产品推荐
相关产品推荐

