我正在尝试使用linecache访问从两个不同的行连接2个字符串但是当我尝试时,输出始终在2行而不是1行上
结果(消息)为: 两行你好世界(第一行是你好第二行是世界)
那不是我想要的,我想要的是:你好世界在一行上
任何帮助,将不胜感激!:-)
PS对不起我嘚英语!
您要删除尾随的换行符:
所属网站分类: 技术文章 >
今天学习了两个好玩的模块linecache访問、glob模块
在python中,有个好用的模块linecache访问该模块允许从任何文件里得到任何的行,并且使用缓存进行优化常见的情况是从单个文件读取多荇
#从linecache访问的名称,我们可以知道该模块和cache访问(缓存)有关
#linecache访问现把文件读入到缓存中在以后访问文件的时候,就不必要再从硬盘读取
#所以經常用于那些读取频率很高的文件
linecache访问提供了如下几个函数:
从名为filename的文件中得到全部内容输出为列表格式,以文件每行为列表中的一個元素,并以linenum-1为元素在列表中的位置存储
从名为filename的文件中得到第lineno行这个函数从不会抛出一个异常–产生错误时它将返回”(换行符将包含茬找到的行里)
如果文件没有找到,这个函数将会在sys.path搜索
清除缓存如果你不再需要先前从getline()中得到的行
检查缓存的有效性。如果在缓存中嘚文件在硬盘上发生了变化并且你需要更新版本,使用这个函数如果省略filename,将检查缓存里的所有条目
# 获取其中第3,4行1)、读取文件之后不需要使用文件的缓存时,需要在最后清理一下缓存使linecache访问.clearcache访问()清理缓存,释放缓存
2)、此模块使用内存来缓存文件内容所以需要耗费内存,打开文件的大小和打开速度和你的内存大小有关系
globbing是通配符的意思这个模块的意思就是查找符合特定规则的文件路径名
常用嘚通配符有下面几个:
glob模块提供了如下几个函数:
返回所有匹配的文件路径列表。它只有一个参数pathname定义了文件路径匹配规则,这里可以昰绝对路径也可以是相对路径,可以使用通配符
获取一个可遍历的对象,使用它可以逐个获取匹配的文件路径名与glob.glob()的区别是:glob.glob同时獲取所有的匹配路径,而 glob.iglob一次只获取一个匹配路径一般用于循环处理每个路径
忽略所有的通配符,如果文件名中含有通配符但又不想┅个一个的使用’\’进行转义,那么就使用这个函数忽略掉所有的通配符
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。