os.getcwd() 表示当前目录,可以换成其他目录路径
 
--返回当前目录中的文件夹和文件
>>> import os
>>> os.listdir(os.getcwd())
['01成品代码', '@test.py', 'addtofile1.py', 'class.py', 'class1.py', 'cmd.py', 'csv.py', 'dbtest.db', 'def.py', 'eggs.csv', 'file.py', 'file1.py', 'get_ext.py', 'global.py', 'grades.dat', 'if.py', 'if1.py', 'imagemgr', 'insert_title.py', 'java', 'picklefile.py', 'printfile1.py', 'Prvdisk', 'PyQt5', 'pytest.py', 'random.py', 'readme.txt', 'ReplaceStr.py', 'sql', 'story.txt', 'test.txt', 'test1.py', 'test_ok.txt', 'writefile1.py', 'www.exe', '__pycache__', '股票补仓计算器.exe', '魔兽显血工具.exe']
>>>
 
--返回当前目录中的文件夹
>>> import os
>>> [p for p in os.listdir(os.getcwd()) if os.path.isdir(p)]
['01成品代码', 'imagemgr', 'java', 'Prvdisk', 'PyQt5', 'sql', '__pycache__']
>>>
 
--返回当前目录中的文件
>>> import os
>>> [p for p in os.listdir(os.getcwd()) if os.path.isfile(p)]
['@test.py', 'addtofile1.py', 'class.py', 'class1.py', 'cmd.py', 'csv.py', 'dbtest.db', 'def.py', 'eggs.csv', 'file.py', 'file1.py', 'get_ext.py', 'global.py', 'grades.dat', 'if.py', 'if1.py', 'insert_title.py', 'picklefile.py', 'printfile1.py', 'pytest.py', 'random.py', 'readme.txt', 'ReplaceStr.py', 'story.txt', 'test.txt', 'test1.py', 'test_ok.txt', 'writefile1.py', 'www.exe', '股票补仓计算器.exe', '魔兽显血工具.exe']
>>>
 
--返回当前目录中以 '.exe' 结尾的文件
>>> [p for p in os.listdir(os.getcwd()) if os.path.isfile(p) and p.endswith('.exe')]
['www.exe', '股票补仓计算器.exe', '魔兽显血工具.exe']
>>>
 
--读文本文件
1、逐行读取
>>> f = open('D:\\Test\\readme.txt', 'r')
>>> for line in f:
print(line)
 
 
大江东去,浪淘尽,千古风流人物。
 
故垒西边,人道是,三国周郎赤壁。
 
乱石穿空,惊涛拍岸,卷起千堆雪。
 
江山如画,一时多少豪杰。
 
遥想公瑾当年,小乔初嫁了,雄姿英发。
 
羽扇纶巾,谈笑间,樯橹灰飞烟灭。
 
故国神游,多情应笑我,早生华发。
 
人生如梦,一樽还酹江月。
>>>
>>> f.close()
 
如果不加 end = '' 会产生空行
 
>>> f = open('D:\\Test\\readme.txt', 'r')
>>> for line in f:
print(line, end = '')
 
 
大江东去,浪淘尽,千古风流人物。
故垒西边,人道是,三国周郎赤壁。
乱石穿空,惊涛拍岸,卷起千堆雪。
江山如画,一时多少豪杰。
遥想公瑾当年,小乔初嫁了,雄姿英发。
羽扇纶巾,谈笑间,樯橹灰飞烟灭。
故国神游,多情应笑我,早生华发。
人生如梦,一樽还酹江月。
>>>
>>> f.close()
 
2、整体读取文本文件
>>> f = open('D:\\Test\\readme.txt', 'r')
>>> print(f.read())
大江东去,浪淘尽,千古风流人物。
故垒西边,人道是,三国周郎赤壁。
乱石穿空,惊涛拍岸,卷起千堆雪。
江山如画,一时多少豪杰。
遥想公瑾当年,小乔初嫁了,雄姿英发。
羽扇纶巾,谈笑间,樯橹灰飞烟灭。
故国神游,多情应笑我,早生华发。
人生如梦,一樽还酹江月。
>>> f.close()
 
--写文本文件
1、直接写入文本文件
>>> f1 = open('D:\\Test\\story1.txt', 'w')
>>> f1.write('abcdefg\n')
8
>>> f1.close()
 
2、追加模式写入文本文件
>>> f1 = open('D:\\Test\\story1.txt', 'a')
>>> f1.write('hijklmn\n')
8
>>> f1.close()
 
3、将字符串插入到文本文件开头
>>> f1 = open('D:\\Test\\story1.txt', 'r+')
>>> temp = f1.read()
>>> temp = 'aaaaaaaa' + '\n' + temp
>>> f1.seek(0) #让文件指针指向文件开头
0
>>> f1.write(temp)
25
>>> f1.close()
 
4、pickle 处理二进制文件
# picklefile.py
 
import pickle
 
def make_pickled_file():
people = {'Alan' : 27,
'Tom' : 28,
'Dan' : 29
}
outfile = open('D:\\Test\people.dat', 'wb')
pickle.dump(people, outfile)
 
def get_pickled_data():
infile = open('D:\\Test\people.dat', 'rb')
people = pickle.load(infile)
return people
 
运行结果:
>>> make_pickled_file()
>>> get_pickled_data()
{'Alan': 27, 'Tom': 28, 'Dan': 29}
>>>
 
 
 
posted on 2017-02-06 20:12  john2017  阅读(151)  评论(0编辑  收藏  举报