python内置函数中的 IO文件系列 open和os

简介:

 本篇介绍 IO 文件中的 open 和 os基础用法。

本次用一个游戏登陆 基础界面做引子,来介绍。

实现存储的话,方式是很多的。 比如 存到字典 和列表了,可是字典、列表是临时的,玩网页游戏一次还是可以,如果要是一个反复要用到的一个软件的话,显然就不合适了,比较熟悉的介质有《文件》,对正在的程序来讲,用文件数存储据存到文件当中不是很好的选择。这里有数据库的概念。

本次用文件来存储

本次内容实现 登陆 验证

登陆验证 形式,必须输入正确的用户名和密码,才可以登陆

一共验证三次。成功即运行程序  ,只要验证通过即可。

形式   :机密游戏软件 需要知道用户名和密码,如果不知道 ,三次都失败,就把这个软件锁上。就打不开软件了。

有了文件之后就可以做很多事情了,只不过要合理安排 存储方式,

开局注册,把注册名 密码 存储到文件,然后登陆验证 时候,从密码文件里面,把用户 密码 读取出来,进行比较,看用户输入的是否相同,如果有 就可以开始玩这个游戏。如果输入用户名,密码三次的话,失败的话,就把用户名锁上。验证三次 不成功,把软件锁上,下次就无法运行。

 

 登陆验证

  open()

  os

 

 

验证形式,必须知道 验证名和密码。才可以开始运行这个程序,去玩这个游戏,如果三次都错,就直接锁上,下次就打不开。

用到两个 函数 open()、  os

Open:功能:写入信息 创建文件 读取内容

Os:功能:系统操作 ,判断文件是否存在。

 

普通循环 判断 例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
'''
Heroes bate-0.2-1 英雄公测
'''
#普通判断版本
welcome = print ('welcome to Heroes world! -- 欢迎来到英雄世界!')
i = 0
while True:
     username = input ('login--注册用户名:')
     password = input ('password--输入你的密码:')
     i += 1
    
     if username == '王哥' and password =='administrator':
         print('<高级王VIP哥用户>')
         print('==loked登陆成功==')
         break
     elif i == 3:
         print('请输入正确管理员密码,你已经被loked 锁住了:')

 

 运行结果

blob.png输入正确用户密码显示blob.png

 

补充 while 循环

 blob.png

 

用IO文件 函数 open 和 os方法

下面就要创建一个文件,创建一个文件 用 open。会显示的更加好看。

 

   

下面就就不是 打印 loked 了 ,是通过 ope os 写出来的。

下面的思路是,创建一个记录信息的文件,如果有这个文件,那我就认为,这个软件是被锁上的,如果没有这个文件,那就继续可以输入用户名 和密码。

后期升级的话,那就判断有没有这个文件,如果有这个文件,里面记录着,某个人的名字,如果记录着,那就告诉代表这个账号被锁了。元旦过节,尽量 抽空学习 补上。



open os 运用 列子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
'''
Heroes bate-0.2-1 英雄公测
'''
#IO内置函数  open os 版本
import os
welcome = print ('welcome to Heroes world! -- 欢迎来到英雄世界!')
i = 0
while True:
     if os.path.isfile('lock.log'):
         print('locked--上锁状态')
         break
     username = input ('login--注册用户名:')
     password = input ('password--输入你的密码:')
     i += 1
     if username == '王哥' and password =='administrator':
          pass
     else:
         if i == 3:
             open('lock.log','w').write(username)
             print('locked by-是它锁上的 %s'%username)
             break
         continue
     print('<高级王VIP哥用户>')
     print('==loked登陆成功,欢迎来到一刀999级的英雄无敌世界==')

 

 运行结果

blob.png 创建文件 并且写入的最后一个用户名称 blob.png

输入正确 用户 密码 就会 进入游戏 运行程序那边了。 这里 运行三次 是 退出 循环条件。没写其它东西。

blob.png

 

上锁后运行 状态 blob.png

 

小描述

open 是用来创建一个文件。

open('lock.log','w').write(username)

解译:打开一个文件名为('lock.log后缀的文件'),w是写入,调用方法写信息,写用户名 文件记录了最后输入的名字。。

/如果没有这个文件就自己创建一个。

print('locked by %s'%username)

解译:告诉是被那个用户锁上的。

为了判断创建 存储数据文件 lock.log是否存在。

这个时候 就要 导用一个模块, os ,为了判断 文件是否存在。

判断 文件是存在方法。  在os 当中有一个类,有个os.path-.isfile-方法判断是否存在,某一个文件,文件是不是文件,用它判断('lock.log')是否存在。后面 就破坏这个循环,判断成立,直接生效。

解锁方式 删除 在运行目录 创建的 文件即可。

让判断失效。


 一月二号小更新

生成文件对象

fileobject = open(filename,mode)

fileobject = file(filename,mode)



本章收获

IO 文件 中的 一个open 内置函数 使用

一个 os 类中的os.path.isfile 使用

2017年12月29日 王宇林

 

 

 

本文转自新网学会 51CTO博客,原文链接:http://blog.51cto.com/xwxhvip/2055725 ,如需转载请自行联系原作者

相关文章
|
2月前
|
搜索推荐 Python
利用Python内置函数实现的冒泡排序算法
在上述代码中,`bubble_sort` 函数接受一个列表 `arr` 作为输入。通过两层循环,外层循环控制排序的轮数,内层循环用于比较相邻的元素并进行交换。如果前一个元素大于后一个元素,就将它们交换位置。
139 67
|
1天前
|
JSON 监控 安全
深入理解 Python 的 eval() 函数与空全局字典 {}
`eval()` 函数在 Python 中能将字符串解析为代码并执行,但伴随安全风险,尤其在处理不受信任的输入时。传递空全局字典 {} 可限制其访问内置对象,但仍存隐患。建议通过限制函数和变量、使用沙箱环境、避免复杂表达式、验证输入等提高安全性。更推荐使用 `ast.literal_eval()`、自定义解析器或 JSON 解析等替代方案,以确保代码安全性和可靠性。
11 2
|
18天前
|
计算机视觉 Python
如何使用Python将TS文件转换为MP4
本文介绍了如何使用Python和FFmpeg将TS文件转换为MP4文件。首先需要安装Python和FFmpeg,然后通过`subprocess`模块调用FFmpeg命令,实现文件格式的转换。代码示例展示了具体的操作步骤,包括检查文件存在性、构建FFmpeg命令和执行转换过程。
37 7
|
28天前
|
Python
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
48 18
|
20天前
|
数据可视化 DataX Python
Seaborn 教程-绘图函数
Seaborn 教程-绘图函数
46 8
|
29天前
|
Python
Python中的函数
Python中的函数
43 8
|
2月前
|
安全 Linux 数据安全/隐私保护
Vanilla OS:下一代安全 Linux 发行版
【10月更文挑战第30天】
68 0
Vanilla OS:下一代安全 Linux 发行版
|
2月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
73 4
|
2月前
|
人工智能 安全 Linux
|
3月前
|
Unix 物联网 大数据
操作系统的演化与比较:从Unix到Linux
本文将探讨操作系统的历史发展,重点关注Unix和Linux两个主要的操作系统分支。通过分析它们的起源、设计哲学、技术特点以及在现代计算中的影响,我们可以更好地理解操作系统在计算机科学中的核心地位及其未来发展趋势。