黑马学习PYTHONp85-p90

  1. 文件的编码
  2. 文件的读取
  3. 文件的写入
  4. 文件的追加
  5. 文件操作综合案例

文件的编码

编码就是一种规则集合记录了内容和二进制间进行相互转换的逻辑,编码有许多中,我们最常用的是UTF-8编码

2.为什么需要使用编码?
计算机只认识0和1,所以需要将内容翻译成0和1才能保存在计算机中。
同时也需要编码,将计算机保存的0和1,反向翻译回可以识别的内容。


文件的读取

了解文件操作的作用

打开文件;读写文件;关闭文件
掌握文件的打开、读取、关闭操作

注意:此时的`f`是`open`函数的文件对象,对象是Python中一种特殊的数据类型,拥有属性和方法,可以使用对象.属性或对象.方法对其进行访问,后续面向对象课程会给大家进行详细的介绍。

"""
文件的读取
"""
#打开文件
f=open("D:/408/lkxtest.txt","r",encoding="UTF-8")
print(type(f))
#读取文件- read()
# f.read(10)
# print(f"读取十个字节的{f.read(10)}")
# print(f"读取十个字节的{f.read()}")

#读取文件-readLines()
# lines=f.readlines()
# print(f"结果是{type(lines)}")
# print(f"读取{(lines)}")

#读取文件-readline()
# line1=f.readline()
# line2=f.readline()
# line3=f.readline()
# print(f"第一行数据是{line1}")
# print(f"第2行数据是{line2}")
# print(f"第3行数据是{line3}")



#for循环读取文件行
# for line4 in f:
#     print(f"每一行数据是{line4}")
# 文件的关闭
f.close()
# with open 语法作文件
with open("D:/408/lkxtest.txt","r",encoding="UTF-8")as f:
    for i in f:
        print(f"每一行数据是{i}")


文件的写入

直接调用write,内容并未真正写入文件,而是会积攒在程序的内存中,称之为缓冲区当调用flush的时候,内容会真正写入文件
这样做是避免频繁的操作硬盘,导致效率下降(攒一堆,一次性写磁盘)

注意:没有存在文件,open会帮你创建一个

文件存在,会把内容清空写入新的

close()方法,带有flush()方法的功能

"""
演示写入操作
"""
#打开文件,不存在的文件
# f=open("D:/408/lkx.txt","w",encoding="UTF-8")
#
# #write写入
# f.write("hello")#内容写入到内存中
# # flush刷新
# f.flush()#将内存中积攒的内容,写入到硬盘的文件中
# #close关闭
# f.close()
# 打开一个存在的文件
f=open("D:/408/lkxtest.txt","w",encoding="UTF-8")
#write写入、flush刷新
f.write("lkx")
#close关闭
f.close()


文件的追加

注意:
 a模式,文件不存在会创建文件

a模式,文件存在会在最后,追加写入文件

"""
追加的演示
"""



# 打开文件,不存在的文件
# f=open("D:/408/lkxx","a",encoding="UTF-8")
# # write写入
# f.write("我是牛的")
#
# # flush刷新
# f.flush()
#
# # close关闭
# f.close()

#打开一个存在的文件
f=open("D:/408/lkxtest.txt","a",encoding="UTF-8")

#write写入、flush刷新
f.write("\n雷军牛逼")
f.flush()
# close关闭
f.close()


文件操作综合案例

完成文件备份案例

damn,累了不想写

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,我可以为您提供一些思路和代码示例。首先,您需要使用Python的GUI库tkinter来设计计算器界面。以下是一个简单的示例代码: ```python import tkinter as tk class Calculator: def __init__(self, master): self.master = master master.title("Calculator") self.display = tk.Entry(master, width=30, justify='right') self.display.grid(row=0, column=0, columnspan=4, padx=5, pady=5) buttons = [ '7', '8', '9', '/', '4', '5', '6', '*', '1', '2', '3', '-', '0', '.', '=', '+' ] # create and place buttons for i, button in enumerate(buttons): row = i // 4 + 1 col = i % 4 tk.Button(master, text=button, width=6, command=lambda x=button: self.click(x))\ .grid(row=row, column=col, padx=5, pady=5) def click(self, key): # handle button clicks if key == '=': result = eval(self.display.get()) self.display.delete(0, tk.END) self.display.insert(0, str(result)) elif key == 'C': self.display.delete(0, tk.END) else: self.display.insert(tk.END, key) root = tk.Tk() calc = Calculator(root) root.mainloop() ``` 这个计算器界面包含一个文本框用于显示计算结果,以及16个按键用于输入数字和运算符。在代码中,我们使用了一个列表来存储按键的文本,然后使用一个循环来创建和放置这些按键。每个按键都有一个回调函数来处理按键点击事件。当按下“=”键时,我们使用eval函数来计算表达式并在文本框中显示结果。当按下“C”键时,我们清空文本框中的内容。 您可以根据需要自由添加其他功能,比如添加按钮来处理括号、百分号等操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值