删除空白行 stipe replace Python中去除文件空行(strip)

最近在看Python基础教程的第一个项目,第一步就是将文件划分为所谓的block块,然后依次进行处理。

而实例给出的两段代码并没有看出直接的判断空行或者类似的代码,于是初步判断strip方法是可以去除空行的。

以下是一个测试,测试文件使用的是和书里一样的文本:

复制代码
 1 #!/usr/bin/env python
 2 
 3 import sys
 4 
 5 get = []
 6 
 7 for line in sys.stdin:
 8     get.append(line)
 9         
10 print(get)
复制代码

显然读取到了空行

复制代码
 1 #!/usr/bin/env python
 2 
 3 import sys
 4 
 5 get = []
 6 
 7 for line in sys.stdin:
 8     get.append(line.strip())
 9         
10 print(get)
复制代码

显然换行符已经被去掉了

所以strip的作用肯定不是像书上说的去除字符串两端多余空格。

查了一下文档说

Return a copy of the string with the leading and trailing characters removed. The chars argument is a string specifying the set of characters to be removed. If omitted or None, the chars argument defaults to removing whitespace. 

该函数的作用是去除字符串两端多余的whitespace

The most common whitespace characters may be typed via the space bar or the tab key. Depending on context, a line-break generated by the return or enter key may be considered whitespace as well.

whitespace应该是空格,Tab和换行的统称,而不仅仅是空格。

另外.replace()函数也可达到目的:

.replace("\n","")

.replace("space","")

最近在看Python基础教程的第一个项目,第一步就是将文件划分为所谓的block块,然后依次进行处理。

而实例给出的两段代码并没有看出直接的判断空行或者类似的代码,于是初步判断strip方法是可以去除空行的。

以下是一个测试,测试文件使用的是和书里一样的文本:

复制代码
 1 #!/usr/bin/env python
 2 
 3 import sys
 4 
 5 get = []
 6 
 7 for line in sys.stdin:
 8     get.append(line)
 9         
10 print(get)
复制代码

显然读取到了空行

复制代码
 1 #!/usr/bin/env python
 2 
 3 import sys
 4 
 5 get = []
 6 
 7 for line in sys.stdin:
 8     get.append(line.strip())
 9         
10 print(get)
复制代码

显然换行符已经被去掉了

所以strip的作用肯定不是像书上说的去除字符串两端多余空格。

查了一下文档说

Return a copy of the string with the leading and trailing characters removed. The chars argument is a string specifying the set of characters to be removed. If omitted or None, the chars argument defaults to removing whitespace. 

该函数的作用是去除字符串两端多余的whitespace

The most common whitespace characters may be typed via the space bar or the tab key. Depending on context, a line-break generated by the return or enter key may be considered whitespace as well.

whitespace应该是空格,Tab和换行的统称,而不仅仅是空格。

另外.replace()函数也可达到目的:

.replace("\n","")

.replace("space","")

猜你喜欢

转载自www.cnblogs.com/lili414/p/9125507.html