本文共 1837 字,大约阅读时间需要 6 分钟。
# 1. 现有一个文件test.txt ,内容如下:# 1234efgh# abcd5678# 要求读出文件内容,对内容的顺序进行编辑,然后重新写入到文件,使其为如下形式# 12345678# abcdefgh思路:In [6]: with codecs.open('text.txt') as f: ...: lines=f.readlines() ...: print '第一行:'+lines[0], ...: print '第二行:'+lines[1],第一行:1234efgh第二行:abcd5678line1=取出第一行的前4个字符+取出第二行的后4个字符line2=取出第二行的前4个字符+取出第一行的后4个字符import codecswith codecs.open("test.txt", "r") as f: #读取方式打开文件 list1 = f.readlines() #读取全部的两行 line1 = list1[0][0:4] + list1[1][4:8] #第一行前四个字节加第二行的后四个字节 line2 = list1[1][0:4] + list1[0][4:8] #第二行的前四个字节加第一行的后四个字节with codecs.open("test.txt", "w") as f: #写入的方式打开文件 f.writelines(line1+"\n") #写入第一行 f.writelines(line2) #写入第二行2、将dict3排序后写入到文件dict.txt中,要求格式为# A 65# B 66# C 67# ...# x 120# y 121# z 122dict3 = {'A': 65, 'C': 67, 'B': 66, 'E': 69, 'D': 68, 'G': 71, 'F': 70, 'I': 73, 'H': 72, 'K': 75, 'J': 74, 'M': 77, 'L': 76, 'O': 79, 'N': 78, 'Q': 81, 'P': 80, 'S': 83, 'R': 82, 'U': 85, 'T': 84, 'W': 87, 'V': 86, 'Y': 89, 'X': 88, 'Z': 90, 'a': 97, 'c': 99, 'b': 98, 'e': 101, 'd': 100, 'g': 103, 'f': 102, 'i': 105, 'h': 104, 'k': 107, 'j': 106, 'm': 109, 'l': 108, 'o': 111, 'n': 110, 'q': 113, 'p': 112, 's': 115, 'r': 114, 'u': 117, 't': 116, 'w': 119, 'v': 118, 'y': 121, 'x': 120, 'z': 122}方法:In [30]: add=lambda x:x+1 #x是一个参数,返回的结果:x+1In [31]: add(3)Out[31]: 4In [63]: t=('a',1)In [64]: t1=lambda a:a[0]In [65]: t1(t)Out[65]: 'a'reverse=False 升序reverse=True 倒序In [33]: d=[1,23,34,435,67]In [34]: d.sort(reverse=False)In [35]: dOut[35]: [1, 23, 34, 67, 435]思路:需要用到sorted函数解:dict3.iteritems()结果是一个元组,然后将元组传入key中,d[0]表示key,d[1]表示值,按key来进行升序with codecs.open('dd.txt','w') as f: for k,v in sorted(dict3.iteritems(),key=lambda d:d[0],reverse=False): f.write('{0} {1}\n'.format(k,v))