掌握点:
- 打印屏幕
- 读取键盘输入
- 读取&写入文件
- 文件目录其他操作
打印屏幕
print
方法,可以使用逗号(,
)打印多个值
如:
print '总数量',totalLines
读取键盘输入
1 .raw_input([’提示信息’]) :从标准输入读取一个行,并返回一个字符串(去掉结尾的换行符)
str = raw_input(‘请输入信息’)
print str
2 .input([‘提示信息’]) :与raw_input有些区别,一般用于输入表达式,其相当于eval(raw_input(prompt))
区别与raw_input
1. raw_input所有输入都会当作字符串处理
2. input则是能够读取一个合法的python表达式,即你输入字符串的时候必须使用引号将它括起来,否则会出现格式错误。
3. input返回值是将表达式进行计算后的值
>>> str = input('this is a test:')
this is a test:'this is a test'
>>> print str
this is a test
读取&写入文件
1. 打开文件: 必须先使用open函数打开一个文件,创建file对象,相关的方法才可以调用它进行读写
open
函数格式:
file object = open(file_name[,access_mode][, buffering])
参数意义:
1. file_name: 文件名称字符串
2. 打开文件模式,读、写,只读、只写。。。默认情况下访问模式为只读。详情参附表
3. buffering:如果设置为0便不会有寄存,如果buffering的值取1,访问文件时会寄存行。如果将buffering的值设为大于1的整数,表明了这就是寄存区缓存大小,取负值则设为系统默认。
-
2. 读 read() :从一个打开的文件中读取一个字符串。注意,二进制也可
格式:
fileObject.read([count]);
-
3. 写 write() :可以将任何字符串写入一个打开的文件。注:二进制也可
-
4. 关闭文件 close() :方法刷新缓冲区里任何还没写入的信息,并关闭该文件,禁止其后操作;如果一个文件对象的引用被重新指定给另一个文件时,python会关闭之前的文件。
文件目录其他操作
文件定位
1 .tell() :返回文件内的当前位置,下一次读写会发生在这一位置之后
2 .seek(offset[,from]) :方法改变当前文件的位置。Offset变量表示要移动的字节数。From变量指定开始移动字节的参考位置。
from = 0 :文件开头
from = 1 :当前位置
from = 2 :文件尾
例:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
f = open('support.py','r+') #文件名可改
str = f.read(20)
print '当前的偏移:', f.tell()
print '读取字符串为:',str
f.seek(10,1)
print '当前的偏移:', f.tell()
str1 = f.read(20)
print '读取字符串为:',str1
f.write('this is a test 01 \n')
f.close()
重命名和删除文件【os模块】
1 .os.rename(currentFileName,newFileName) :更改文件名
2 .os.remove(fileName) :删除文件
3 .os.mkdir(‘newDir’) :创建一个新目录
4 .os.chdir(‘newDir’) :改变当前工作路径,如果你想要去其他目录打开一个文件,就先需要将当前工作路径转换掉才行
5 .os.getcwd() :获取当前目录
6 .os.rmdir(‘dirname’) :删除目录
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import os
'''
f = open('nametest.txt','a+')
f.write('我是一个测试')
f.close
'''
#os.rename('hello.py','support.py')
#os.remove('nametest.txt')
#os.mkdir('testPython')
str = os.getcwd()
print ‘当前工作路径 :’,str
os.chdir('/Users/lee/Desktop') #目录必须为一个已经存在的
str = os.getcwd()
print ‘当前工作路径 :’,str
f = open('task.txt','r') # task在Desktop中
print f.read()
f.close()
其他相关操作参考:
附:
打开文件模式
模式 描述
r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。
r+ 打开一个文件用于读写。文件指针将会放在文件的尾部。
rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。
w 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
w+ 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。
File对象的属性:当一个文件打开后你可以得到所有的文件属性:
file.closed : 文件是否被关闭
file.mode : 返回访问模式
file.name : 返回文件名称
file.softspace : 末尾是否强制加了空格,则返回fase,否则返回true
小目标:传入一个文件或文件夹,判断,其中所有的文件中文字的个数
需要点:
1. 判断是否为文件或文件夹
2. 判断文件类型.m .h .txt
3. 循环遍历读取值,判断其行数量
4. 计算并输出