热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python去除空行_python中去掉空行的问题

在python中处理空行时,经常会遇到一些问题。现总结经验如下:1.遇到的空行如果只有换行符,直接使用\n或者len(line)line

在python中处理空行时,经常会遇到一些问题。现总结经验如下:

1.遇到的空行如果只有换行符,直接使用=='\n'或者 len(line)==line.count('\n')

2.有多个空格+换行符时。有几种处理方法:①split; ②正则表达式'^\n'(不会);③if eachLine[:-1].strip()

展开:

eg.文件过滤,显示一个文件的所有行,忽略以井号(#)开头的行。

f=open('test.txt','r')

for eachLine in f:

if not eachLine.split(): # whether space

print eachLine,

elif eachLine.strip()[0]!='#':

print eachLine,

f.close()

f=open('test.txt','r')

for eachLine in f:

if not eachLine[:-1].strip():#whether space

print eachLine,

elif eachLine.strip()[0]!='#':

print eachLine,

f.close()

这两种方法都可以判断,

从同一台电脑上读取同样多行的字母,相对来说,第一种方法花费了8.4s,第三种方法花费了1.6s。从实验的角度上大概是第三种方法相对性能更优。

但具体是split()性能更优还是[:-1].strip()性能更优,有待进一步学习。

python实现去掉空行

# coding = utf-8def clearBlankLine(): file1 = open('text1.txt', 'r', encoding='utf-8') # 要去掉空行的文件 fi ...

Python中通过csv的writerow输出的内容有多余的空行两种方法

第一种方法 如下生成的csv文件会有多个空行 import csv #python2可以用file替代open with open("test.csv","w" ...

Python 去除字符串中的空行

Python 去除字符串中的空行 mystr = 'adfa\n\n\ndsfsf' print("".join([s for s in mystr.splitlines(True ...

Python中通过csv的writerow输出的内容有多余的空行

第一种方法 如下生成的csv文件会有多个空行 import csv #python2可以用file替代open with open("test.csv","w" ...

详解Python中的循环语句的用法

一.简介 Python的条件和循环语句,决定了程序的控制流程,体现结构的多样性.须重要理解,if.while.for以及与它们相搭配的 else. elif.break.continue和pass语句 ...

python中常用的模块的总结

1. 模块和包 a.定义: 模块用来从逻辑上组织python代码(变量,函数,类,逻辑:实现一个功能),本质就是.py结尾的python文件.(例如:文件名:test.py,对应的模块名:test) ...

Python::re 模块 -- 在Python中使用正则表达式

前言 这篇文章,并不是对正则表达式的介绍,而是对Python中如何结合re模块使用正则表达式的介绍.文章的侧重点是如何使用re模块在Python语言中使用正则表达式,对于Python表达式的语法和详细 ...

线程安全及Python中的GIL

线程安全及Python中的GIL 本博客所有内容采用 Creative Commons Licenses 许可使用. 引用本内容时,请保留 朱涛, 出处 ,并且 非商业 . 点击 订阅 来订阅本博客. ...

Python中的字符串与字符编码

本节内容: 前言 相关概念 Python中的默认编码 Python2与Python3中对字符串的支持 字符编码转换 一.前言 Python中的字符编码是个老生常谈的话题,同行们都写过很多这方面的文章. ...

随机推荐

CSS深入研究:display的恐怖故事解密(2) - table-cell

上集已经把display的属性列表拉出来溜了,发现在这个属性恐怖面貌其实都是脆弱的伪装.除了部分常用 ...

POJ 2446 Chessboard (二分图最大匹配)

题目链接:http://poj.org/problem?id=2446 给你一个n*m的棋盘,其中有k个洞,现在有1*2大小的纸片,纸片不能覆盖洞,并且每个格子最多只能被覆盖一次.问你除了洞口之外这个 ...

遍历并修改dictionary的值

var dictiOnary= clb_Select.Items.Cast().ToDictionary(item => item.ToString(), item ...

AndroidStudio1.1.0配置使用androidannotations

1:从GitHub上下载最新版androidannotations-api-3.3.1.jar 2:新建Module:my-aa-test 3:将androidannotations-api-3.3. ...

UVA10487(二分)

Given is a set of integers and then a sequence of queries. A query gives you a number and asks to fin ...

[Android学习笔记]枚举与int的转换

package com.example.enumdemo; import android.app.Activity; import android.os.Bundle; import android. ...

【iCore4 双核心板_uC/OS-II】例程九:消息队列

一.实验说明: 前面介绍通过信息传递可以进行任务间的交流,信息也可以直接发送给一个任务,在uC/OS-II中每一个任务在它们内部都有一个消息队列,也即任务消息队列,用户可以直接给一个任务发送消息,不需 ...

Eigen矩阵基本运算

1 矩阵基本运算简介 Eigen重载了+,-,*运算符.同时提供了一些方法如dot(),cross()等.对于矩阵类的运算符重载只支持线性运算,比如matrix1*matrix2是矩阵相乘,当然必须要 ...

Centos 中 vi 和vim 的区别

它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面. vim的这些优势主要体现在以下几个方面:1.多级撤消我们知道在vi里,按 u只能撤消上次 ...


推荐阅读
author-avatar
摇身一变鄙人
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有