王二学习python的笔记以及记录

学习内容

.1.文件操作
笔记.txt
1.文件路径:D:\python\Day8\笔记.txt
2.编码方式:GB2312
3.操作方式:只读,只写,追加,读写,写读...
以什么编码方式储存文件,就以什么编码进行操作
2. 各种操作 r w a r+ a+ w+

代码区

1.文件操作练习

# 只读文件 r
'''
# 非文字文件 用rb
f = open('d:\python\Day8\笔记.txt', mode='r', encoding='GB2312')
content = f.read()
print(content, type(content))
f.close()
'''
# 只写文件 w
'''
# w 没有文件,创建文件;有文件,删除内容再写入
f = open('log', mode='w', encoding='utf-8')
f.write('大萨达所')
f.close()
# wb
f = open('log', mode='wb',)
f.write('dsadsasds所'.encode('utf-8'))
f.close()
'''
# 增加内容 a a+ 增读
'''
f = open('log', mode='a', encoding='utf-8')
f.write('增加内容')
f.close() f = open('log', mode='ab')
f.write('假期'.encode('utf-8'))
f.close() f = open('log', mode='a+', encoding='utf-8')
f.write('增加内容')
f.seek(0)
print(f.read())
f.close()
'''
# 读写(r+ 读写顺序不要乱) 文件
'''
f = open('log', mode='r+', encoding='utf-8')
print(f.read())
f.write('呦西')
f.close() f = open('log', mode='r+b')
print(f.read())
f.write('呦西'.encode('utf-8'))
f.close()
'''
# 写读(w+ 写读顺序不要乱) 文件
'''
f = open('log', mode='w+', encoding='utf-8')
f.write('呦西')
f.seek(0)
print(f.read())
f.close() f = open('log', mode='w+b')
f.write('呦西'.encode('utf-8'))
f.seek(0)
print(f.read())
f.close()
'''
# 功能详解
# 按照最小字符去读 seek 是按照字节定义光标,unicode 中一个中文=3字节
'''
f = open('log', mode='r+', encoding='utf-8')
f.seek(3)
print(f.tell())
print(f.read())
f.close()
'''
# tell 使用 无论怎么调节光标a操作直接增加到最后
'''
f = open('log', mode='a+', encoding='utf-8')
f.write('增加内容')
count = f.tell()
f.seek(count - 3)
print(f.read())
f.close()
'''
# 命令
'''
f.tell()
f.readable() # 是否可读
f.readline() # 一行一行读
f.readlines() # 将每行当成列表中的一个元素
f.truncate(6) #对源文件进行截取 按字节 for line in f:
print(line) # 循环打印源文件 with open('log', mode='r+', encoding='utf-8') as f:
print(f.read())
with open('log', mode='r+', encoding='utf-8') as f, open('笔记.txt', mode='r+', encoding='GB2312') as f1:
print(f1.read()) # 同时打开多个
'''

2.用户注册,登陆,三次机会

# 用户注册,并登录,三次机会
print('欢迎注册')
account = input('请输入用户名')
answer = input('请输入密码')
with open('log', mode='w+', encoding='utf-8') as f:
f.write(account+'\n')
f.write(answer)
print('注册成功,请登录')
li = []
with open('log', mode='r+', encoding='utf-8') as f1:
for line in f1:
li.append(line)
count = 3 while count >= 1:
count = count - 1
acc = input('请输入账号')
if acc == li[0].strip():
count = 3
while count >= 1:
count = count - 1
ans = input('请输入密码')
if ans == li[1].strip():
print('正在登陆请稍后')
quit()
else:
print('密码错误,剩余次数', count)
continue
else:
print('账号输入错误,剩余次数',count)
if count == 0:
print('机会用完啦,明天再来吧')
break
continue

python之路——8的更多相关文章

  1. Python之路【第一篇】python基础

    一.python开发 1.开发: 1)高级语言:python .Java .PHP. C#  Go ruby  c++  ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...

  2. Python之路

    Python学习之路 第一天   Python之路,Day1 - Python基础1介绍.基本语法.流程控制              第一天作业第二天   Python之路,Day2 - Pytho ...

  3. python之路 目录

    目录 python python_基础总结1 python由来 字符编码 注释 pyc文件 python变量 导入模块 获取用户输入 流程控制if while python 基础2 编码转换 pych ...

  4. Python之路【第十九篇】:爬虫

    Python之路[第十九篇]:爬虫   网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用 ...

  5. Python之路【第十八篇】:Web框架们

    Python之路[第十八篇]:Web框架们   Python的WEB框架 Bottle Bottle是一个快速.简洁.轻量级的基于WSIG的微型Web框架,此框架只由一个 .py 文件,除了Pytho ...

  6. Python之路【第十七篇】:Django【进阶篇 】

    Python之路[第十七篇]:Django[进阶篇 ]   Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接 ...

  7. Python之路【第十六篇】:Django【基础篇】

    Python之路[第十六篇]:Django[基础篇]   Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了O ...

  8. Python之路【第十五篇】:Web框架

    Python之路[第十五篇]:Web框架   Web框架本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. 1 2 3 4 5 6 ...

  9. Python之路【第九篇】:Python操作 RabbitMQ、Redis、Memcache、SQLAlchemy

    Python之路[第九篇]:Python操作 RabbitMQ.Redis.Memcache.SQLAlchemy   Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用 ...

  10. Python之路【第八篇】:堡垒机实例以及数据库操作

    Python之路[第八篇]:堡垒机实例以及数据库操作   堡垒机前戏 开发堡垒机之前,先来学习Python的paramiko模块,该模块机遇SSH用于连接远程服务器并执行相关操作 SSHClient ...

随机推荐

  1. SSH服务器拒绝了密码

    一般进行到这一步,可能是sshd的设置不允许root用户远程登录首先修改一下vim /etc/sshd/ssh_config     修改成如下图:然后reboot或者service sshd res ...

  2. EF连接Sqlserver2014,使用DBGeography时提示无法加载sqlserverspatial.dll

    (1)确认你要使用的SqlServer版本,如果是2014,就要在nuget中添加microsoft.sqlserver.types.dll,使用12.0.4100.1这个版本,它会自动添加sqlse ...

  3. 详解Oracle partition分区表

    随着表中行数的增多,管理和性能性能影响也将随之增加.备份将要花费更多时间,恢复也将 要花费更说的时间,对整个数据表的查询也将花费更多时间.通过把一个表中的行分为几个部分,可以减少大型表的管理和性能问题 ...

  4. 皮质学习 HTM 知多少

    目录 Hierarchical Temporal Memeory 0.1 引言 历史 HTM 概览 HTM的层级结构 神经元 HTM 端对端应用框架[^8] 数据编码[^1] 数据编码 数据输入 树突 ...

  5. 新一代的json--fetch

    fetch( "http://jsontest.bceapp.com/hi", { method:"POST", mode:"core", ...

  6. oracle 导出某用户下的表

    exp test/test@orcl owner=test file=E:/all.dmp

  7. get 乱码解决方案

    1.针对Post方式提交的请求如果出现乱码,可以每次在request解析数据时设置编码格式: request.setCharacterEncoding("utf-8"); 也可以使 ...

  8. Git常用指令和GitHub操作总结

    Git版本管理工具(CVS) 首先粘上两个Git的基础链接~ 阮一峰:http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html 廖雪峰:h ...

  9. python中类的创建和实例化

    python中同样使用关键字class创建一个类,类名称第一个字母大写,可以带括号也可以不带括号: python中实例化类不需要使用关键字new(也没有这个关键字),类的实例化类似函数调用方式: # ...

  10. 【leetcode】438. Find All Anagrams in a String

    problem 438. Find All Anagrams in a String solution1: class Solution { public: vector<int> fin ...