python元组及文件
一、元组学习:() 空元组
t1=(0,) 单个元素的元组
t2=(0,'Ni',1.2,3) 四个元素的元组
t2=0,'Ni',1.2,3 另一个四元素的元组
t3=('abc',('def','ghi'))
t1 索引
t3 索引的索引
t1 分片
len(t1) 长度
t1+t2 合并
t2*3 重复
for x in t 迭代
'spam' in t2 成员关系
T=(1,2,3,4,5)
L=列表解析用元组转换
元组本身不可变,但是对于内容是可变
>>> T=(1,,4)
>>> T='spam'
>>> T
(1, ['spam', 3], 4)
二、文件操作学习
output=open('/tmp/spam','w') 创建输出文件('w'是写入)
input=open('data','r') 创建输入文件('r'是指读写)
input=open('data') 与上行相同('r'是默认值)
aString=input.read() 把整个文件读进单一个字符串
aString=input.read(N) 读取之后的N个字节到一个字符串
aString=input.readline() 一行一行的读取
aaList=input.readlines() 读取整个文件
output.write(aString) 写入字节字符串到文件
output.writelines(aList) 把列表内所有字符串写入文件
output.close() 手动关闭(当文件收集完成时会替你关闭文件)
output.flush() 把输出缓冲区刷到硬盘中,但不关闭文件
anyFile.seek(N) 修改文件位置到偏移量N处以便进行下一个操作
>>> file=open('install.log','w')
>>> file.write('hello,world\n')
>>> file.close()
>>> ofile=open('install.log')
>>> ofile.readline()
'hello,world\n'
>>> ofile.readline()
''
解析操作文件
>>> X,Y,Z=43,44,45
>>> S='spam'
>>> D={'a':1,'b':2}
>>> L=
>>> F=open('datafile.txt','w')
>>> F.write(S + '\n')
>>> F.write('%s,%s,%s\n' %(X,Y,Z))
>>> F.write(str(L) + '$' +str(D) + '\n')
>>> F.close()
>>> F=open('datafile.txt')
>>> line=F.readline()
>>> line
'spam\n'
>>> line.rstrip() 去掉文件中多余的行终止符
'spam'
>>> F=open('datafile.txt','r')
>>> line=F.readline()
>>> line
'43,44,45\n'
>>> parts=line.split(',')
>>> parts
['43', '44', '45\n']
>>> int(parts)
44
>>> numbers=
>>> numbers
>>> F=open('datafile.txt','r')
>>> line=F.readline()
>>> line
"${'a': 1, 'b': 2}\n"
>>> parts=line.split('$') 用split分割
>>> parts
['', "{'a': 1, 'b': 2}\n"]
>>> eval(parts) 利用内置函数eval把字符串变成可执行的程序代码
>>> objects=
>>> objects
[, {'a': 1, 'b': 2}]
##pickle模块存储python原生对象,其实它就像一个数据格式化和解析工具
>>> F=open('datafile.txt','w')
>>> import pickle
>>> pickle.dump(D,F)
>>> F.close()
>>> F=open('datafile.txt')
>>> E=pickle.load(F) 利用pickle在文件中存储字典
>>> E
{'a': 1, 'b': 2}
##struct模块构造并解析打包二进制数据
>>> F=open('data.bin','wb')
>>> import struct
>>> bytes=struct.pack('>i4sh',7,'spam',8)
>>> bytes
'\x00\x00\x00\x07spam\x00\x08'
>>> F.write(bytes)
>>> F.close()
>>> F=open('data.bin','rb')
>>> data=F.read()
>>> data
'\x00\x00\x00\x07spam\x00\x08'
>>> values=struct.unpack('>i4sh',data)
>>> values
(7, 'spam', 8)
三、其他
##比较、相等性、真值:
“==” 操作符测试值的相等性,python运行相等测试,递归地比较所有内嵌对象
"is" 表达式测试对象的一致性,python测试二者是否是同一个对象,是否在一个内存地址中。
python中不同类型的比较方法如下:
数字通过相对大小进行比较
字符串是按照字典顺序,一个字符接一个字符地对比进行比较("abc" < "ab")
列表和元祖从左到右对每部分的内容进行比较
字典通过排序之后的(键、值)列表进行比较
##python真假的含义:
python和大多数程序设计语言一样,整数0代表假,整数1代表真;另外python把任意的空数据结构视为假,
把任意的非空数据结构视为真;真和假是每个对象的固有的属性,每个对象不是真就是假。
数字如果非零,则为真。
其他对象如果非空,则为真。
“spam” True
"" False
[] False
{} False
1 True
0.0 Flase
None Flase
页:
[1]