Day12-总结

2019-06-19  本文已影响0人  SheeranED

一.文件操作

1.数据持久化(数据本地化)

2.文件操作 - 文件内容的操作

绝对路径

open('/newclass/语言基础/文件操作和异常捕获/files/test1.txt')

相对路径

1.打开文件

f = open('./files/test1.txt', 'r', encoding='utf-8')

2.获取文件中的内容

对象.read() - 获取文件中所有的内容

contend = f.read()
print(contend)

3.移动读写位置(移动光标)

对象.seek(0) - 将读写位置移动到文件开头

f.seek(0)
print(f.readline())

4.关闭文件

f = open('./files/test1.txt', 'r', encoding='utf-8')
while True:
    contend = f.readline()
    if not contend:
        break
    print(contend)
f.close()

二.数据持久化

数据持久化:a.需要持久化的数据保存在本地文件中

         b.需要数据的时候去文件中读数据
         c.数据发生改变后将最新的数据写入文件中
f = open('files/num.txt', 'r', encoding='utf-8')
num = int(f.read())
f.close()

num += 1
print(num)

f = open('files/num.txt', 'w', encoding='utf-8')
f.write(str(num))
f.close()
f = open('files/text2.txt', 'r', encoding='utf-8')
money = int(f.read())
f.close()
value = int(input('1.存钱 2.取钱:'))
if value == 1:
    money1 = int(input('金额:'))
    f = open('files/text2.txt', 'w', encoding='utf-8')
    f.write(str(money+money1))
    f.close()
elif value == 2:
    money2 = int(input('金额:'))
    f = open('files/text2.txt', 'w', encoding='utf-8')
    f.write(str(money-money2))
    f.close()
f = open('files/text2.txt', 'r', encoding='utf-8')
print(money)
f.close()

三.二进制文件

1.常见的二进制文件:图片文件、视频文件、音频文件、压缩文件

f = open('./files/p1tankU.gif', 'rb')
content = f.read()
f.close()
f = open('files/new.gif', 'wb')
f.write(content)
f.close()

2.文件不存在

3.打开文件的简写

with open('files/test1.txt', 'r', encoding='utf-8') as f:
    print(f.read())

四.json数据

1.什么是json数据 - 满足json格式的数据

2.json转Python

result = json.loads('123')  # 123

result = json.loads('"abc"')  # abc

result = json.loads('true')  # True

result = json.loads('[false, 22]')

3.python转json

python json
int/float 数字
str 字符串,单引号变成双引号
bool 布尔,True -> true
list/tuple 数组
dict 字典
None null

result = json.dumps(100)

result = json.dumps('faf')

result = json.dumps([22, 'sadas', [23, 'af']])
print(result)
result = json.dumps({'name': '小明', 'age': '15'})
print(result)

result = json.loads('{"name": "\u5c0f\u660e", "age": "15"}')
print(result)
上一篇下一篇

猜你喜欢

热点阅读