十七、文件的使用

一、文件的两种表示形式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、文件的打开与关闭

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述

tf = open('test.txt','r',encoding='UTF-8')  #文本形式打开,tf为文件句柄
print('文本输出:',tf.readline())    #输出第一行
tf.close()
tf = open('test.txt','rb')  #二进制打开
print('二进制输出:',tf.readlines())  #全部输出
tf.close()

运行结果:
文本输出: 今天是除夕!

二进制输出: [b’\xe4\xbb\x8a\xe5\xa4\xa9\xe6\x98\xaf\xe9\x99\xa4\xe5\xa4\x95\xef\xbc\x81\r\n’, b’\xe5\x90\x83\xe9\xa5\xad\xe5\xb9\xb4\xe5\xa4\x9c\xe9\xa5\xad\xe6\xb3\xa1\xe4\xba\x86\xe4\xb8\x80\xe6\xac\xa1\xe6\xbe\xa1\xef\xbc\x8c\xe6\xb0\xb4\xe5\xbe\x88\xe7\x83\xad\xe3\x80\x82’]

三、文件内容的读取

在这里插入图片描述
在这里插入图片描述

f = open('test.txt','r',encoding='UTF-8')
print('输出全部内容:\n',f.read())
f.close()   #注意文件打开后具有继承性

f = open('test.txt','r',encoding='UTF-8')
print('输出前两个字:\n',f.read(2))
f.close()   #注意文件打开后具有继承性

f = open('test.txt','r',encoding='UTF-8')
print('输出一行内容:\n',f.readline())
f.close()   #注意文件打开后具有继承性

f = open('test.txt','r',encoding='UTF-8')
print('输出该行前两个字:\n',f.readline(2))
f.close()   #注意文件打开后具有继承性

f = open('test.txt','r',encoding='UTF-8')
print('输出所有行:\n',f.readlines())
f.close()   #注意文件打开后具有继承性

f = open('test.txt','r',encoding='UTF-8')
print('输出:\n',f.readlines(7))   #输出包含第七个字符的前所有行,从零开始计数
f.close()   #注意文件打开后具有继承性


运行结果:
输出全部内容:
今天是除夕!
吃饭年夜饭泡了一次澡,水很热。
洗完澡就上床了。
再凑一行吧。
输出前两个字:
今天
输出一行内容:
今天是除夕!

输出该行前两个字:
今天
输出所有行:
[‘今天是除夕!\n’, ‘吃饭年夜饭泡了一次澡,水很热。\n’, ‘洗完澡就上床了。\n’, ‘再凑一行吧。’]
输出:
[‘今天是除夕!\n’]

四、文件的写入

在这里插入图片描述
在这里插入图片描述

五、实例

1.实例一

import turtle as t
t.penup()
t.seth(-90)
t.fd(160)
t.pendown()
t.pensize(20)
t.colormode(255)
for j in range(10):
    t.speed(2000)
    t.pencolor(25*j,5*j,15*j)
    t.seth(130)
    t.fd(220)
    for i in range(23):
        t.circle(-80,10)
    t.seth(100)
    for i in range(23):
        t.circle(-80,10)
    t.fd(220)
t.done()

在这里插入图片描述

2.实例二

在这里插入图片描述

import turtle as t
t.title('自动根轨迹')
t.setup(800,600,0,0)
t.pencolor('red')
t.pensize(5)
datals = []
f = open('data.txt')
for line in f:
    line = line.replace('\n','')
    datals.append(list(map(eval,line.split(','))))
f.close()
for i in range(len(datals)):
    t.pencolor(datals[i][3],datals[i][4],datals[i][5])
    t.fd(datals[i][0])
    if datals[i][0]:
        t.right(datals[i][2])
    else:
        t.left(datals[i][2])
t.done()

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值