python学习day07

Posted Duke77

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python学习day07相关的知识,希望对你有一定的参考价值。

一:文件操作

#codeing:UTF-8
#__author__:Duke
#date:2018/3/4/004
#今天学习文件操作

# #读文件
f = open(information,r,encoding=utf-8) #打开一个文件对象,用读的方式
data = f.read(5)# 并用read方法,无参数时读出全部的内容,参数为字符数
print(data)
f.close()  #关闭文件
#
# #写文件
f = open(information2,w,encoding=utf-8) #打开一个文件对象,用写的方式
f.write(hello world !)# 并用write方法
f.write(duke)
f.close()  #关闭文件
#
# #追加文件内容
f = open(information2,a,encoding=utf-8) #打开一个文件对象,用追加的方式
f.write(hello ****!)# 并用write方法
f.write(杜克)
f.close()  #关闭文件

# r+  模式  在最后追加
f = open(information,r+,encoding=utf-8) #打开一个文件对象,用读的方式
data = f.read(5)# 并用read方法,无参数时读出全部的内容,参数为字符数
print(data)
f.write(\njoin)
f.close()  #关闭文件

#先清空,可写之后可读
f = open(information,w+,encoding=utf-8) #打开一个文件对象,用读的方式
f.write(join)
print(f.tell())#写完后光标在最后
f.seek(0)   #调整光标,后才可以读取
print(f.readline())
f.close()  #关闭文件


#复制文件
f_read = open(information2,r,encoding=UTF-8)
f_write = open(information3,a,encoding=UTF-8)
num = 0
for line in f_read:
    num = num+1
    if num == 6:
        line = hello world\n
    f_write.write(line)
f_write.close()
f_read.close()

二:文件对象的方法

#codeing:UTF-8
#__author__:Duke
#date:2018/3/4/004
#读文件
f = open(information,r,encoding=utf-8) #打开一个文件对象,用读的方式
num = 0;
for i in f:#迭代器方法读取数据,也就是用一行取一行
    num +=1
    if num == 6:
        i = ‘‘.join([i.strip(),iii])
    print(i.strip())
f.close()  #关闭文件

# #tell方法
f = open(information,r,encoding=utf-8) #打开一个文件对象,用读的方式
print(f.tell())  #tell方法读取光标位置
print(f.read(1))
print(f.tell())
f.seek(0)  #调整光标位置
print(f.tell())
print(f.read(1))
print(f.tell())
f.close()  #关闭文件


import time
f = open(information2,w,encoding=utf-8) #打开一个文件对象,用读的方式
f.write(duke)# 并用read方法,无参数时读出全部的内容,参数为字符数
f.flush()
time.sleep(10)
time.sleep(10)
f.close()  #关闭文件

#flush 方法
import time,sys
for i in range(30):
    sys.stdout.write(*)
    sys.stdout.flush()
    time.sleep(0.1)

#truncate 截断方法
f = open(information2,a,encoding=utf-8) #打开一个文件对象,用追加的方式
f.truncate(2)
f.close()  #关闭文件

三:作业时间(三级菜单的增删查改)

#codeing:UTF-8
#__author__:Duke
#date:2018/3/4/004

file = open(information,r+,encoding=UTF-8)
data = file.read()
data = eval(data)
file.close();
# for key in data:
#     print(key)
current_layer = data;  #记录当前所在级
parent_layers =[ ];  #列表存放进入路径
flag = 0;
while True:
    for key in current_layer:
        print(key);  #循环打印菜单
    choice  =  input("[b:返回,d:删除,a:增加 ,r:修改 ]>>>:").strip()  #输入,并去除前后的空格形式的多余字符
    if len(choice) == 0:continue;
    if choice in current_layer:
        parent_layers.append(current_layer)   #进入下一层前先将他的前一层放到进入的路径列表中
        current_layer = current_layer[choice];   #将下一层赋值为当前层
    elif choice == b:
        if parent_layers:
            current_layer = parent_layers.pop ();  #取出它的父层,并赋值到当前层
        elif flag ==1 :
            break;
        else:
            flag +=1
            print ("已经是最第一层,再按一次将退出程序")
    elif choice == d:
        value = input("输入你想删除的值:>>")
        current_layer.pop(value)

    elif choice == r:
        value1 = input("输入你想修改的值:>>")
        current_layer.pop (value1)
        value2 = input("输入你想修改后的值:>>")
        value2 = {value2: {}}
        current_layer.update (value2)

    elif choice == a:
        value = input("输入你想增加的值:>>")
        value = {value:{}}
        current_layer.update(value)
    else:    #判断非法输入
        print("无该选项...");

print(data)

file2 = open(information,w,encoding=UTF-8)
data = str(data)
file2.write(data)
file2.close()

 

以上是关于python学习day07的主要内容,如果未能解决你的问题,请参考以下文章

python学习_day07——文件操作

python 学习DAY07

python 学习笔记day07-python函数高级应用

在python中添加24小时

Python学习之旅—Day07(生成器与迭代器)

python开发学习-day07(面向对象之多态类的方法反射新式类and旧式类socket编程)