Python中列表使用strip函数无效,如何去除元素首尾空格?
问题解决方法
你的代码里i.strip()只处理了整行文本的首尾空白,但按逗号分割后,每个元素自身的前后空格并没有被处理,这就是为什么打印出来的列表元素还带空格。
直接修改代码,对split后的每个元素单独执行strip()即可:
方案一:列表推导式(推荐)
with open(r"C:\filelocation") as f: lines = f.readlines() processed_list = [] for line in lines: # 先清理整行首尾空白,再分割,最后逐个清理元素的空格 cleaned_items = [item.strip() for item in line.strip().split(",")] processed_list.append(cleaned_items) # 查看处理后的结果 for elem in processed_list: print(elem)
方案二:使用map函数
with open(r"C:\filelocation") as f: lines = f.readlines() processed_list = [] for line in lines: cleaned_line = line.strip() split_items = cleaned_line.split(",") # 用map批量处理每个元素的空格 cleaned_items = list(map(str.strip, split_items)) processed_list.append(cleaned_items) for elem in processed_list: print(elem)
处理后输出的结果会变成:
['46', 'Celsius'] ['42', 'Celsius'] ['93', 'Fahrenheit']
内容的提问来源于stack exchange,提问作者Ash S
相关产品推荐
相关产品推荐

