擅长:python、mysql、java
<p>这对我有用</p>
<pre><code>def get_my_line(line_no):
print("myline {}".format(line_no))
path = 'test.txt'
f = open(path)
i = 0
was_prev_text_new_line = False
for foo in f.readlines():
if (foo.__eq__("\n")):
if (was_prev_text_new_line):
i += 1
get_my_line(i)
was_prev_text_new_line = True
else :
print(foo.replace("\n", ""))
was_prev_text_new_line = False
i += 1
get_my_line(i)
</code></pre>
<p>这里的逻辑是:
->;get_my_line是一个函数,它根据变量“i”给出/打印要添加/打印的所需行</p>
<p>->;每次调用get\u my\u line时,“i”都会递增</p>
<p>->;f.readlines读取每个新行并存储在foo中(即,'\n'被它检测到)</p>
<p>->;如果foo是'\n',则表示有一个非文本包含行。在</p>
<p>->;这里的方法是在每个语句后添加新行,如果foo为'\n',则检查prev txt read是否为'\n'(这有助于我们跳过包含行的文本后的第一个'\n',对于后续的连续'\n',我们可以添加新行)</p>
<p>—>;如果was_prev_text_new_line为true,则调用get_my_line并递增i</p>
<p>->;在if块末尾设置“was”prev“text”或“new”line“真”</p>
<p>->;如果foo不是('\n'),那么只需打印foo,获得要添加的新行并增加i</p>