记录下这几天写的代码
1.一个模块
# encoding: utf-8
# author: SophiaGao
'''这是try_gao_1709.py模块,它提供了一个函数print_list。这个函数能够打印列表(包括带嵌套的列表),
并且可选择是否按层次打印,也可选择是否按层次缩进,可选择打印出的位置'''
from __future__ import print_function
import sys
def print_list(the_list, indent=False, level=0, position=sys.stdout):
'''这是print_list函数,一共有三个参数。
the_list是当前处理的链表;indent是选择是否缩进打印,默认不缩进;
level是缩进tab的初始个数,默认为0.
position是选择打印的位置,默认是标准输出'''
for each_item in the_list:
if isinstance(each_item, list):
print_list(each_item, indent, level+1, position)
else:
if indent:
for num in range(level):
print('\t', end='', file=position)
print(each_item, file=position)
2.从文件中读出数据
# auth = 'gao'
# encoding: utf-8
import os
import pickle
import try_gao_1709
os.chdir('../../kankan')
print(os.getcwd())
man = list()
other = list()
try:
the_data = open("sketch.txt")
for each_line in the_data:
each_line = each_line.decode("gbk").encode("utf-8")
try:
(role, words) = each_line.split(':', 1)
words = words.strip()
if role == 'Man':
man.append(words)
elif role == 'Other Man':
other.append(words)
except ValueError:
pass
the_data.close()
except IOError as err:
print('The File is missing.' + str(err))
3.对pickle的使用
腌制
try:
with open('man_data.txt', 'wb') as pickle1, open('other_data.txt', 'wb') as pickle2:
pickle.dump(man, pickle1)
pickle.dump(other, pickle2)
except IOError as err:
print('File Error!'+str(err))
except pickle.PickleError as perr:
print('Pickle Error!' + str(perr))
读出
import pickle
import try_gao_1709
import os
os.chdir('../../kankan')
new_man = list()
try:
with open('man_data.txt', 'rb') as man, open('other_data.txt', 'rb') as other:
new_man = pickle.load(man)
try_gao_1709.print_list(new_man)
except IOError as err:
print('File Error!'+ str(err))
except pickle.PickleError as perr:
print('Pickle Error!' + str(perr))
一些图片记在这里