python第六次笔记 2018.4.12

Python的文件操作
读文件
f = open("1.txt","r")
test = f.readlines()
print(test)
f.close()

写文件
f = open("1.txt","w")
f.write("hello world")
f.close()

文件的常用方法
With的方法
codecs


文件操作
参数1:文件名,可以是文件的绝对路径
参数2:option w写 r读 b (binary)以二进制方式 a追加
例如:

f = open("1.txt","r")
print(f.read)
f.close()
#把文件的内容读取打印出来


f = open("1.txt","w")
f.write("hello world\nshenmegui\nno作no die")
f.close()
#写入文件,内容为hello world\nshenmegui\nno作no die
会出现乱码,一般会在后面加入encoding="utf-8",例:f = open("1.txt","w",encoding="utf-8")
python3要指定encoding

也可以做一个全局申明,
ENCODING = "utf-8"


f = open("1.txt","w",encoding=ENCODING)
f.write("hello world\nshenmegui\nno作no die")
f.close()

#文件对象f常永的操作方法
#read() 把文件的所有内容都读取出来,返回一个字符串
#write(date) 把字符串data写入到文件中,只接受字符串参数
#fr.readline() 读取文件的每一行(每次读取文件一行数据,返回每行的字符串数据)
#fr.readlines() 读取文件内容,返回一个list,每一行是一个元素
例如:for i,line in enumerate(fr.readlines()): # enumerate 打印行号
print(line) #美化 print("第{0}行内容为:{1}.format(i,line)")
#fr.name() 文件名字
#fr.fileno() 文件描述符
#fr.close() 关闭文件
#fr.encoding 文件编码
#fr.closed 返回bool值,判断文件是否已经关闭
#fr.seek(offset,whence) offset偏移量 whence 0开头 1现在位置, 控制文件光标,文件需要使用b方式打开,offset 正数向后偏移,复数向前偏移
#fr.tell() 返回文件的光标位置(回车键算2个单位)
#fr.truncate(size) 只有写文件才可以用,size写0等于清空文件全部内容,其他文件代表清空到什么地方




文件打开方式2:

with open("1.txt","r") as f: #最常用操作方式 codecs.open
print(f.read())

with codecs.open("1.txt,"r",encoding=ENCODEING) as f:
print(f.read())

函数以关键词def开头,函数名,参数:回车缩进
def function(arg1,arg2,....)
pass

函数就是一种封装的思想,把细小功能或者可以缩小的功能封装成一种函数

函数的调用:
函数名直接传入参数就可以
function(1, 2, 3)
arg1,arg2 形参(形容的参数)
1, 2, 3 实参(实际参数)

*args 代表 tuple
**kwargs 代表dict
fun(1,2,3,4,5,a=1,b=2)
a = 1
args = 2, 3, 4, 5 (1被a调用了) 一一对应过来
kwargs = {"a":1,"b":2} dict 一一对应过来

匿名函数:
lambda
求两个数的和:
lambda x,y:x+y



add = lambda x,y :x+y
等价于
def add(x,y):
return x+y


阶乘的题用函数来封装:

def jc(n):
if n == 0:
return 1
else:
result = 1
for i in range(1,n+1):
result *= i
return result

def main():
n = 10
count = 0
for i in range(0,n+1):
count += jc(i)
print("count = {0}".format(count))

if __name__ == '__main__':
main():
阅读更多

没有更多推荐了,返回首页