python笔记——文件

一.文件的理解

1.概述
文件时储存在辅助存储器上的数据序列
文件是数据存储的一种形式
文件的展现形态:文本文件二进制文件

2.文本文件
单一特定编码组成的文件,如UTF-8编码
由于存在编码,所以也被看成长字符串
适用于.txt /.py文件等

3.二进制文件
直接由比特0和1组成,没有统一字符编码
一般存在二进制0和1的组织结构,即文件格式
适用于**.png/.avi**文件等

二.文件的操作

1.文件的打开与关闭

f=open("f.txt","r")
f.close()

文件的打开格式

<变量名>=open(<文件路径和名称><打开模式>)

文件路径和名称
D:\study\math\data.txt
当源文件和要打开的文件同目录时,可以省略路径,直接使用data.txt

打开模式
‘r’——只读模式(默认值),如果文件不存在,返回FileNotFoundError
‘w’——覆盖写模式,文件不存在则创建,存在则完全覆盖
‘x’——创建写模式,文件不存在则创建,存在则返回FileExitsError
‘a’——追加写模式,文件不存在则创建,存在则在文件最后追加内容
‘b’——二进制文件模式
‘t’——文本文件模式,默认值
‘+’——与r/w/x/a同用,增加读写功能

2.文件内容读取

<f>.read(size)
#参数为空读入全部内容,给出参数读出前size长度

<f>.readline(size)
#参数为空读入一行内容,给出参数读出该行前size元素

<f>.readlines(hint)
#参数为空读入所有行,以每行为元素形成列表,给出参数,读入前hint行

3.文件的写入

<f>.write(s)
#向文件写入一个字符串或字节流

<f>.writelines(lines)
#将一个元素全为字符串的列表写入文件

<f>.seek(offset)
改变当前文件操作指针的位置,offset含义如下
0是文件开头,1是当前位置,2是文件结尾

三.turtle通过文件自动轨迹绘制

1.步骤
定义数据文件格式(接口)
编写程序,根据文件接口解析绘制图形
编写数据文件

2.map()函数
map函数是python的内置函数,会根据提供的函数对指定的序列做映射。

map(function,iterable)
#需要传递两个参数
#function——一个函数
#iterable一个或多个可迭代序列
#map函数返回一个集合,是function函数作用于iterable后的结果
def fun(x):
    return x+1
print(list(map(fun,[1,2,3])))    
#打印结果为[1,4,9]    

3.自动轨迹绘制

import turtle,time
turtle.title("自动轨迹绘制")
turtle.pensize(5)
turtle.pencolor("red")
#数据读取
datas=[]
f=open("E:\\drawdata.txt")
for line in f:
    line=line.replace("\n"," ")
    datas.append(list(map(eval,line.split(","))))
f.close()
#自动绘制
for i in range(len(datas)):
    turtle.pencolor(datas[i][3],datas[i][4],datas[i][5])
    turtle.fd(datas[i][0])
    if datas[i][1]:
        turtle.right(datas[i][2])
    else:
        turtle.left(datas[i][2])

time.sleep(3)

4.drawdata.txt文件

300,0,144,1,0,0
300,0,144,0,1,0
300,0,144,0,0,1
300,0,144,1,1,0
300,0,108,0,1,1
184,0,72,1,0,1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值