Python核心编程之第一个Python程序
来源:互联网 发布:观网络知识防诈骗有感 编辑:程序博客网 时间:2024/06/05 22:09
#!/usr/bin/env python#makeTextFile.py ---- create text fileimport osls = os.linesep#get filenamewhile True: fname = raw_input('Enter filename:') if os.path.exists(fname): print "ERROR:'%s'already exists" % fname else: break#get file content (text) linesall = []print "\nEnter lines ('.'by itself to quit).\n"#loop until user terminates inputwhile True: entry = raw_input('>') if entry == '.': break else: all.append(entry)#write lines to file with proper line-endingfobj = open(fname,'w')fobj.writelines(['%s%s' % (x, ls) for x in all])fobj.close()print 'Done!'
break 指示跳出while循环语句。
解析:fobj.writelines(['%s%s' % (x, ls) for x in all])
当输入内容保存在内存中,需要将其保存到文件。 打开文件准备进行写操作。
将内存中得到内容逐行写入文件。每个文件都需要一个行结束符(或者文件结束符)。代码结构称为列表解析。它完成:
对我们文件的每一行,根据程序运行平台添加一个合适的行结束符。'%s%s'为每行添加行结束符,(x, ls)表示每一行及其行结束符,对Unix平台是'\n', 对DOS或win32平台式'\r\n'。通通过使用os.lineseq,我们不关心程序运行在什么平台,也不必涛根据不同的平台决定使用哪种行结束符。文件对象的writelines()方法接收包含行结束符的结果列表,并将它写入文件。
#!/usr/bin/env Python#ReadTextFile.py ---- read and display text file#get filenamefname = raw_input("Enter filename:")print#attempt to open file for readingtry: fobj = open(fname, 'r')except IOError, e: print '*** file open error:', eelse: #display contents to the screen for eachLine in fobj: print eachLine, fobj.close()
try-except-else语句:
try子句是一段我们希望检测错误的代码块。即我们的动作;
except子句是我们处理错误的地方,检查try的动作,--通常是IOERROR类型的错误。
else子句在try代码块运行无误时执行。
由于我们没有移除代表每行结束的行结束符,我们不得不抵制print语句自动生成的行结束符--通过在print语句的最后加一个逗号可以达到这一目的。(不处理的话既有两个行结束符--即回车换行2次)
0 0
- Python核心编程之第一个Python程序
- python核心编程-第一个GUI程序
- Python编程之第一个Python程序
- python核心编程“第一个Python程序”makeTextFile.py中错误纠正
- 对《Python核心编程》中“第一个Python程序”的改进
- 第一个Python程序
- 第一个Python程序
- 第一个Python程序
- 第一个python 程序
- 第一个Python程序
- 第一个python程序
- 第一个python程序
- 第一个python程序
- 第一个python程序
- 第一个Python程序
- 第一个Python程序
- 第一个Python程序
- 第一个Python程序
- 第二章 Swift 基础语法
- 自己整理的HTML基本标签参考知识
- Spring配置数据源的三种方式 (dbcp,c3p0,jndi)
- 50种方法优化SQL Server
- UVa 755 - 487--3279
- Python核心编程之第一个Python程序
- 使用PIG Latin 进行编程
- Nebula3 渲染系统
- Android学习小Demo(4)贝塞尔曲线跟翻页效果
- PHPExcel 学习笔记2(转)
- malloc与calloc、realloc
- 黑马程序员——————————多线程2
- 【LeetCode with Python】 Binary Tree Maximum Path Sum
- 马努一个和你的人特任何关于同意