#f= open(r"aaa/a.txt",mode='rt') # f的值是一种变量,占用的是应用程序的内存空间,此时牵扯的是两个方面的资源

#print(f)

##2.操作文件:读/写文件,应用程序对文件的读写请求都是向操作系统调用,然后由操作系统控制把硬盘把输入读入内存,或者写入硬盘

#res=f.read()

#print(res)

#关闭文件 z

#f.close()"""回收操作系统资源,f 还存在"""

#f变量还存在,但是不能再读了

#del f """回收应用程序程序资源"""

#文件对象又称为文件句柄

# with open("a.txt",mode='rt') as f1:

# res=f1.read()

# print(res)

# with open("a.txt",mode='rt') as f1,open("b.txt",mode='rt') as f2:

# res1=f1.read()

# res2=f2.read()

# print(res1)

# print(res2)

"""指定字符编码"""

"""t 文本(默认的模式)

1。 读写都是以str (unicode)为单位的

2。文本文件

3。必须指定encoding='utf-8'"""

# 没有指定encoding 参数操作系统会使用自己的默认的编码,

# Linux 和mac 默认使用utf-8

# Windows默认gbk

# with open ('c.txt',mode='rt',encoding='utf-8') as f:

# res=f.read() #t模式会将f.read()读出来的结果解码成unicode

# print(res,type(res))

#

#内存:utf-8格式的二进制----解码--->unicode

#硬盘(c.txt 内容 utf-8格式的二进制)

#以t 模式为基础进行内存操作

##1.rt

在本python文件的目录下创建一个name.txt的文本文件,

izhan:1005

inp_username = input("please input your name:").strip()

inp_password = input("please input your password:").strip()

with open("name.txt",mode='rt',encoding='utf-8') as f:

res=f.read()

print(res)

username,password=res.split(":")

print(username)

print(password)

print(inp_username)

print(inp_password)

if inp_username == username and inp_password == password:

print("congratulations! you can login")

else:

print("sorry! the password is wrong or has no this user")

please input your name:izhan

please input your password:1005

izhan

1005

izhan

1005

congratulations! you can login

随便输入看看:

please input your name:dandan

please input your password:0711

izhan

1005

dandan

0711

sorry! the password is wrong or has no this user

Process finished with exit code 0

再创建一个name.txt 文件

izhan:1005

lili:1111

dandan:0711

另外:python spit 的学习:

https://www.cnblogs.com/clairedandan/p/10926173.html

inp_username = input("please input your name:").strip()

inp_password = input("please input your password:").strip()

with open("name.txt",mode='rt',encoding='utf-8') as f:

for line in f:

print(line,end='') # 没有end='',结果就会一行一行中间有一行空的。

username,password=line.strip().split(":")

# print(username)

# print(password)

if inp_username == username and inp_password == password:

print("login successfully")

break

else:

print("账号错误")

please input your name:lili

please input your password:0711

izhan:1005

lili:1111

dandan:0711账号错误

Process finished with exit code 0

please input your name:izhan

please input your password:1005

izhan:1005

login successfully

Process finished with exit code 0

"""w:只写模式,当文件不存在时会创造空文件,当文件存在时会清空文件,"""

# with open("d.txt",mode="wt",encoding="utf-8") as f:

# # f.read()"""报错,不可读"""

# f.write("hahaha\n")

# f.write("hello\n")

# f.write("wwwwww\n")

##如果重新打开文件,则会清空之前的内容,如果连续write,则会连续写的

"""3.a 只追加写,"""

# with open("a.txt",mode="at",encoding="utf-8") as f:

# # f.read() 不能读

# f.write("hahahahah\n")

# f.write("enenenenen\n")

# f.write("oooooo\n")

"""a 重新打开文件,不会清空文件内容,会将文件指针直接移动到末尾

a 文件一直用作记录日志,注册功能"""

"""a 模式注册功能"""

# name=input("please input your name:")

# pwd=input("please input your password:")

# with open("db.txt",mode="at",encoding="utf-8") as f:

# f.write("{}:{}\n".format(name,pwd))

w 可以用做文本文件的copy

with open("e.txt",mode="rt",encoding="utf=8")as f1,\

open("f.txt",mode="wt",encoding="utf-8")as f2:

res=f1.read()

f2.write(res)

src_file=input("源文件文件:")

dst_file=input("目标文件:")

with open(r"{}".format(src_file),mode="rt",encoding="utf=8")as f1,\

open(r"{}".format(dst_file),mode="wt",encoding="utf-8")as f2:

res=f1.read()

f2.write(res)

/usr/local/bin/python3.8 /Users/futantan/PycharmProjects/S14/文件知识/文件处理.py

源文件文件:/Users/futantan/PycharmProjects/S14/文件知识/a.txt

目标文件:/Users/futantan/PycharmProjects/S14/a_copy.txt

Process finished with exit code 0

此时就可以发现有一个copy的文件了

标签:txt,python,res,--,详解,mode,print,input,password

来源: https://www.cnblogs.com/clairedandan/p/14105609.html

python文件操作模式是什么,python --文件操作模式详解相关推荐

  1. python实现单例模式的几种方式_基于Python中单例模式的几种实现方式及优化详解...

    单例模式 单例模式(Singleton Pattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在.当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场. ...

  2. python海量数据分析师职业技能_大数据分析师技能图谱详解与零基础自学内容大全...

    全球的数据量正在以每18个月翻一倍的惊人速度增长,世界正在高速数字化,大数据堪比石油,如何掘金大数据是所有个人.企业和国家的机遇和挑战.中国是人才大国,能理解和应用大数据的创新人才更是稀缺资源.大数据 ...

  3. Python中常见的__init__.py是什么意思?详解Python import的方式和原理

    Python中常见的__init__.py是什么意思?详解Python import的方式和原理 1 什么是模块化编程? 2 __init__.py文件的作用 3 Python如何import第三方库 ...

  4. pythonprint字节按照16进制输出_对python以16进制打印字节数组的方法详解

    对python以16进制打印字节数组的方法详解 一.问题描述 如果直接用print打印bytes的话,有时候会直接显示ascii对应的字符,看起来很蛋疼. 二.运行效果 上面一行是直接用print打印 ...

  5. python如何制作脚本_用python给自己做一款小说阅读器过程详解

    前言 前一段时间书荒的时候,在喜马拉雅APP发现一个主播播讲的小说-大王饶命.听起来感觉很好笑,挺有意思的,但是只有前200张是免费的,后面就要收费.一章两毛钱,本来是想要买一下,发现说的进度比较慢而 ...

  6. Python教程:python中二维列表的创建、访问、应用详解

    欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是<Python中二维列表的创建.访问.应用详解>.本知识点主要内容有:二维列表的概念.直接定义二维列表.使用嵌套的for循环创 ...

  7. python six模块详解_对python中的six.moves模块的下载函数urlretrieve详解

    实验环境:windows 7,anaconda 3(python 3.5),tensorflow(gpu/cpu) 函数介绍:所用函数为six.moves下的urllib中的函数,调用如下urllib ...

  8. python 读取图片转换为一维向量_对Python中一维向量和一维向量转置相乘的方法详解...

    对Python中一维向量和一维向量转置相乘的方法详解 在Python中有时会碰到需要一个一维列向量(n*1)与另一个一维列向量(n*1)的转置(1*n)相乘,得到一个n*n的矩阵的情况.但是在pyth ...

  9. python什么意思k_对python中的*args与**kwgs的含义与作用详解

    对python中的*args与**kwgs的含义与作用详解 在定义函数的时候参数通常会使用 *args与**kwgs,形参与实参的区别不再赘述,我们来解释一下这两个的作用. *args是非关键字参数, ...

  10. Python 3.7.1 中 namedtuple 具名元组基本用法详解

    Python 3.7.1 中 namedtuple 具名元组基本用法详解 转载请注明出处:https://blog.csdn.net/jpch89/article/details/84645251 文 ...

最新文章

  1. Understanding The React Source Code
  2. 第十六章 贪心算法——0/1背包问题
  3. Linux C 实现生产者消费者问题
  4. wxDrawjs循环添加图形后增加标识记录点击的是哪个的另类方法
  5. MongoDB数据库的下载与Python交互
  6. ECCV 2018 MemTrack:《Learning Dynamic Memory Networks for Object Tracking》论文笔记
  7. java的svn插件maver_eclipse中 svn插件导入maven项目
  8. 人工机器:NDC-谷歌机器翻译破世界纪录,仅用Attention模型,无需CNN和RNN
  9. 一段Big5繁体转换简体GB2312的程序
  10. 【leetcode】109. Convert Sorted List to Binary Search Tree
  11. 【思科】GNS3模拟静态NAT/动态NAT
  12. 用asp.net+Jquery+Ajax+sqlserver编写的 (英语六级记单词)
  13. c语言实验五函数答案,C语言程序设计实验五 参考答案.doc
  14. Git入门(本地使用)
  15. dw php获取当前时间,tp5时间戳转日期的方法
  16. WordPress资源源码网站源码下载/整站打包【带1200数据】
  17. 精准定位直播爆品、快速打造爆款上热门,视频号工具人手必备!
  18. vagrant lanp mysql远程登录设置
  19. chromium浏览器定制 | 高匿名爬虫随机指纹
  20. Cannot create symlink/symbolic to `xxx': Operation not supported

热门文章

  1. 10分钟上线 - 利用函数计算构建微信小程序的Server端
  2. 老司机教你分析日志:分析用户的地理位置信息
  3. 对话MathWorks:解读MATLAB技术生态圈与未来趋势
  4. AI 赛道“新选手”锐捷发布新一代 AI SaaS 云平台,支撑百万级零售货柜
  5. 上市之后,青云存储平台QingStor也要“进军”云原生
  6. DevOps 在移动应用程序开发中扮演什么角色?
  7. 十年云计算大爆发,微软正在摧毁其它竞争对手
  8. 这位博士跑赢“地震波”:提前 10 秒预警宜宾地震!
  9. 自己虚拟服务器都用json可以吗,vue+webpack项目中使用dev-server搭建虚拟服务器,请求json文件数据,实现前后台分离开发...
  10. bootstraptable中responsehandle获取数据缺失_Python中的向量化字符串操作