Python按行输出文件内容具体解释及延伸
下面两端測试代码分别为笔者所写,第一段为错误版本号。后者为正确版本号:
#! /usr/bin/python2.7
try:
filename = raw_input(‘please input filename:’)
for eachLine infilename:
print(eachLine)
eachLine.close()
except IOError as err:
print(‘file open error: {0}’.format(err))
#! /usr/bin/python2.7
try: //try....except--------为Python中的异常处理语句
filename = raw_input(‘please input filename:’) //读取字符
fobj = open(filename, ‘r’) //检測操作语句
for eachLine in fobj: //循环输出
print(eachLine)
fobj.close() //关闭对象句柄
except IOError as err:
print(‘file open err:{0}’.format(err))
笔者自己的错误:
习惯性的觉得,创建了文件之后,就能够直接读取当中的数据。可是须要先检測文件是否存在,须要用到内建open()函数。
关于内建函数open():
handle = open(file_name,access_mode=’r’)
file_name 变量包括我们希望打开的文件的字符串名字。access_mode表示打开文件的方式,打开方式如表1,假设open成功。一个文件对象句柄会被返回。
全部兴许文件操作都必须通过此文件句柄进行。当一个文件对象返回之后,我们就能够訪问它的一些方法,eg. readlines(),close()。
表1. 文件打开模式
| a | 追加模式打开 |
| w | 写模式打开 |
| r | 读模式打开 |
| a+ | 读写模式打开 |
| w+ | 读写模式打开 |
| r+ | 读写模式打开 |
| ab | 二进制追加模式打开 |
| wb | 二进制写模式打开 |
| rb | 二进制读模式打开 |
| ab+ | 二进制读写模式打开 |
| wb+ | 二进制读写模式打开 |
| rb+ | 二进制读写模式打开 |
Tips:
代码中一个有趣的语句。即print(eachLine)。
此语句中能够通过在末尾加入逗号的方式,抑制自己主动生成的换行符号,由于在文件里自带换行字符。假设我们不抑制print语句产生的换行符号。就会有额外的空行产生。
两种方式的执行结果对照图如图1。
图1.print语句两种方式执行结果对照图
Python按行输出文件内容具体解释及延伸的更多相关文章
- Node.js高效按行输出文件内容
const fs = require('fs'); const EventEmitter = require('events'); const util = require('util'); cons ...
- Python跳过第一行读取文件内容
Python编程时,经常需要跳过第一行读取文件内容.比较容易想到是为每行设置一个line_num,然后判断line_num是否为1,如果不等于1,则进行读取操作.相应的Python代码如下: inpu ...
- Python 输出文件内容到网络端口
Python 输出文件内容到网络端口 $ cat mySocketTest.py import sys import time import socket if __name__ == "_ ...
- centos 正则,grep,egrep,流式编辑器 sed,awk -F 多个分隔符 通配符 特殊符号. * + ? 总结 问加星 cat -n nl 输出文件内容并加上行号 alias放~/.bash_profile 2015-4-10 第十三节课
centos 正则,grep,egrep,流式编辑器 sed,awk -F 多个分隔符 通配符 特殊符号. * + ? 总结 问加星 cat -n nl 输出文件内容并加上行号 alias放~ ...
- rev 反向输出文件内容
1.命令功能 rev 按行反向输出文件内容 2.语法格式 rev file 3.使用范例 [root@localhost ~]# echo {a..k} >> test [root@lo ...
- etc/passwd 和 /etc/shadow 文件内容及其解释
/etc/passwd 和 /etc/shadow 文件内容及其解释 默认情况下,/etc/passwd 存储有关本地用户的信息 /etc/passwd 采用以下格式: 1)username ...
- Python按行读取文件、写文件
Python按行读取文件 学习了:https://www.cnblogs.com/scse11061160/p/5605190.html file = open("sample.txt&qu ...
- Python基于正则表达式实现文件内容替换的方法
Python基于正则表达式实现文件内容替换的方法 本文实例讲述了Python基于正则表达式实现文件内容替换的方法.分享给大家供大家参考,具体如下: 最近因为有一个项目需要从普通的服务器移植到SAE,而 ...
- Python 命令行输出的颜色设置
Console上运行的python程序,有没有办法让print输出的文本可以显示不同的颜色? 这个其实跟python无关,跟具体所用console的类型有关系,不同的类型对应不同的控制码,如果是ans ...
随机推荐
- node.js 的介绍
1.node.js是什么? (1)node.js不是一门编程语言, 是一个开发平台,就像Java开发平台,Net平台,PHP开发平台,Apple开发平台.(何为开发平台?有对应的编程语言,有语言运行时 ...
- 利用filter过滤去重
var r, ary = ['apple', 'strawberry', 'banana', 'pear', 'apple', 'orange', 'orange', 'strawberry']; r ...
- assert.notDeepStrictEqual()详解
assert.notDeepStrictEqual(actual, expected[, message]) 深度地严格不相等比较测试,与 assert.deepStrictEqual() 相反. c ...
- Volume 1. String(uva)
10361 - Automatic Poetry #include <iostream> #include <string> #include <cstdio> # ...
- SQlServer中的MD5加密
SELECT sys.fn_varbintohexstr(HASHBYTES('MD5', '我'));
- jmeter接口测试实战简例
1.接口需求文档说明 2.打开jmeter,新建线程组,线程组里面默认配置就可以 3.建立http请求,我这里是http请求,所以我选择这个,跟进实际情况 4.post请求说明,post直接加参数和参 ...
- Python数组列表(List)
Python数组列表 数组是一种有序的集合,可以随时添加和删除其中的元素. 一.数组定义: 数组是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现. 数组的数据项不需要具有相同的类 ...
- ZOJ 3905 Cake
Cake Time Limit: 4 Seconds Memory Limit: 65536 KB Alice and Bob like eating cake very much. One ...
- Android BGABadgeView:BGABadgeLinearLayout以整体线性布局作为BadgeView(3)
Android BGABadgeView:BGABadgeLinearLayout以整体线性布局作为BadgeView(3) Android BGABadgeView不仅可以把某个View作为B ...
- python 几种点积运算方式效率分析
本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/51793984 本文列举出几种pytho ...