python在文本中添加空格时不写入
我有一个工作代码,如果下一行有“Welcome”,它会在文本文件中写“hi” 但是,如果下一行在单词“Welcome”之前以空格开头,则不会显示“hi” 代码: 输入:afile.txt 预期产出:python在文本中添加空格时不写入,python,Python,我有一个工作代码,如果下一行有“Welcome”,它会在文本文件中写“hi” 但是,如果下一行在单词“Welcome”之前以空格开头,则不会显示“hi” 代码: 输入:afile.txt 预期产出: 我也需要保持我的独立性。我该怎么做?您当前正在直接检查欢迎。取而代之的是,去掉一行空白,并使用以下条件 if item.strip().startswith("Welcome"): 编辑 我看到您在前面的a=[x.rstrip()for x in f]中完成了rstrip。改为执行lstrip,以
我也需要保持我的独立性。我该怎么做?您当前正在直接检查
欢迎。取而代之的是,去掉一行空白,并使用以下条件
if item.strip().startswith("Welcome"):
编辑
我看到您在前面的a=[x.rstrip()for x in f]
中完成了rstrip
。改为执行lstrip
,以删除左侧的空白。但是,如果执行此操作,将不会保留缩进。行中:
a=[x.rstrip()表示f中的x]
将rstip
替换为strip
,您就可以开始了…您会问,当行以well come
而不是welcome
开头时,为什么它不输出hi
?这是因为您使用的是物品。startswith(“welcome”)当“welcome”包含空格时,实际上是“well come”,因此开始时返回False。如果Welcome包含空格,您的预期输出是什么?我是指缩进中的空格,但您在“Welcome”之前将此选项卡/空格插入何处?如果您想索引元素,请使用枚举
在写入hi后扫描我保留缩进?@Chaeltrims,您必须使用我的初始答案才能使用如果item.strip().startswith(“Welcome”):
,则我答案的编辑部分不会保留缩进。
Welcome here
Good place
hi
Welcome here
Good place
if item.strip().startswith("Welcome"):