文件操作

#判断水仙花数
while 1:
sum = 0
num = input(“请输入一个数:(100-999)(按Q/q退出程序)”)
if num.isdigit():
if 99<int(num)<1000:
for i in num:
a = int(i)**3
sum = sum +a
# print(num,sum)
if sum==int(num):
print(‘这个数%s是水仙花数’% num)
break
else:
print(‘该数%s不是水仙花数’% num)
else:
print(‘该数超出范围’)
elif num.upper() == ‘Q’:
break
else:
print(“都让你输入一个数字了!”)

#36选7
from random import randint #随机数
lst = []
count = 1
while count <8:
r = randint(1,36)
if r not in lst:
lst.append®
elif r in lst:
count = count - 1
count = count + 1
else:
print(lst)

#a,b两个值互换a,b = b,a
lst = [4,5,1,2,3,6,7,4]
count = 0
while count < len(lst):
i = 0
while i < len(lst) - 1:
if lst[i] > lst[i+1]:
lst[i],lst[i+1] = lst[i+1],lst[i]
i = i + 1
count = count + 1
print(lst)

#文件操作
#r模式
#文件路径:
#1.绝对路径,从磁盘的根目录寻找 或 从互联网上寻找一个路径
#2.相对路径,相对于当前按程序所在文件夹 …/上一层文件夹
f = open(“文件名/路径”,mode=’’,encoding = ‘’)
s = f.read()
s = f.readline() #一次读一行
f.close()#如果没有,在下面程序删除文件会报错

for line in f: #文件是一个可迭代对象
print(line.strip()) #一行一行的处理数据

#w模式
#带w的,只要操作了,就会清空源文件
#如果文件不存在,会自动创建文件
f.write(’’)
f.flush() #刷新缓冲区

#a模式
#换行需要手动控制
f.write(’’)

#rb,wb,ab,bytes如果处理的是非文本文件,mode中有b,enco不能给
f = open(“c:/”,mode = “rb”) #这里不能写encoding
e = open(“e:/”,mode = “wb”)
for line in f : #从C盘读取
w.write(line) #写入到e盘
f.close()
e.flush()
e.close()

#r+模式
#不论你读取了多少内容,光标在哪儿,写入的时候都是在结尾写入,除非上来就写入,此时在开头
#最好用的读写同时存在的模式

#w+模式
#很少用,会清空文件中的内容
#写完之后光标在最后,此时读取没有内容
f.seek(0) #移动光标
#f.seek(n)光标移动到n的位置,注意:移动的是byte,所以如果是UTF—8的中文部分要是3的倍数
#f.seek(偏移量,位置) 位置0:首位 位置1:当前位置 位置2:末尾
#a+模式
#写完之后光标在最后,此时读取没有内容

#f.seek(0) #移动光标
#f.tell() #获取当前光标位置
#f.truecate() #截断文件 删掉光标后面全部内容
#f.truecate(n) #截断文件 删掉n位置后面全部内容

#文件修改
#1.引入os模块
#2.打开目标文件 r
#3.打开文件副本 w
#4.从r中读取内容进行修改,写入到副本中
#5.删除源文件
#6.重命名副本
import os
with open(“文件名”,mode="",encoding="") as f1,
open(“文件名—副本”,mode="",encoding="") as f2 #打开文件,好处是运行完不用close
for line in f1:
line=line.replace(“XXX”,“XX”) #将文件中的XXX改为XX
f2.write(line)
os.remove(“文件名”) #删除文件
os.rename(“文件名—副本”,“文件名”) #将副本重命名

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值