首页 > 编程语言 > 详细

Python学习笔记

时间:2019-06-05 22:05:22      阅读:182      评论:0      收藏:0      [点我收藏+]
  1. 字符串不能修改,只能覆盖。
  2. 列表和元组都是有序的,字典是无序的。集合也是无序的
  3. 列表是我们以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储、修改等操作。
  4. 集合去重比列表更方便
  5. 集合最重要的两个作用是去重和关系测试
  6. 集合去重

list_1=[1,2,3,5,6,2,4,5]
list_1=set(list_1)
print(list_1,type(list_1))

 

7. 取交集(关系测试)

list_1=[1,2,3,5,6,2,4,5]
list_1=set(list_1)
list_2=set([1,2,8,4,5])
print(list_2)
print(list_1,type(list_1))
print(list_1.intersection(list_2))

print(list_1&list_2)#另一种表达

 

8. 取并集(关系测试)

print(list_1.union(list_2))

print(list_2|list_1)#另一种表达

9. 差集(关系测试)

print(list_1.difference(list_2))

print(list_1-list_2)#另一种表达

10. 判断一个集合是不是另一个集合的子集(关系测试)

print(list_3.issubset(list_1))

11. 判断一个集合是不是另一个集合的父集(关系测试)

print(list_1.issuperset(list_3))

12. 反向差集(关系测试)

把两个集合的交集去掉,把互相都没有的合到一起。

print(list_1.symmetric_difference(list_2))

print(list_1^list_2)#另一种表达

13. 其他

1) 判断两个集合是否有交集(关系测试)

print(list_1.isdisjoint(list_2))

2) 添加

list_2.add(999)#添加一项

List_2.update([999,888,777])##添加多项
print(list_2)

list_2.update(999)

3) 删除

List.pop()任意删

List.remove()任意删

4) 指定删除

list_2.discard(999)
print(list_2)

14. 文件操作(只能读或者只能写)

对文件操作流程

1)打开文件,得到文件句柄并赋值给一个变量

2)通过句柄对文件进行操作

3)关闭文件

15. 打开文件,读取文件

f=open("yesterday2",‘r‘,encoding="utf-8")
print(f.read())

16. 打开文件,写文件,这个是创建一个新文件

f=open("yesterday3",‘w‘,encoding="utf-8")
f.write("my name is mff")

17. 追加(不会覆盖以前的文件)但是还是不能读取文件的。append

f=open("yesterday3",‘a‘,encoding="utf-8")
f.write("what your name?")

 

18. 读取前五行

f=open("yesterday2",‘r‘,encoding="utf-8")
for i in range(5):
    print(f.readline())

19. 把文件循环一遍,但是不打印第十行

for line in f.readlines():
    print(line.strip())#strip是把空格和空行都去掉

for index,line in enumerate(f.readlines()):
    if line==9:
        print("----------------")
        continue
    print(line.strip())

另一种写法:

 

20. 一行行的读,并且内存中只保留一行

f=open("yesterday2",‘r‘,encoding="utf-8")
for line in f:
    print(line)

 

21. 不读取第十行

f=open("yesterday2",‘r‘,encoding="utf-8")
count=0
for line in f:
    if count==9:
        print("----------------")
        count+=1
        continue
    print(line)
    count+=1

 

22. 查看文件句柄指针

f=open("yesterday2",‘r‘,encoding="utf-8")
print(f.tell())

结果:0

f=open("yesterday2",‘r‘,encoding="utf-8")
print(f.tell())
print(f.readline())
print(f.tell())

结果:31

Tell是按字符计数的。

23. 把句柄指针返回到开头

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

24. detach()函数

在编辑过程改变字符编码

25. 返回文件在内存中的编号

print(f.fileno())

26. 判断句柄指针是否可以移动,字符串,普通的二进制是可以移动的。

print(f.seekable())

 27. 刷新

默认是等到缓存满了以后一次性刷入到硬盘中。内存读写速度要比硬盘快很多。

Flush()方法是实时刷到硬盘上

import sys
import time
for i in range(50):
    sys.stdout.write("#")
    sys.stdout.flush()
    time.sleep(0.1)

显示的效果是一个个的刷到硬盘上了。

28. 截断

f=open("yesterday3",‘a‘,encoding="utf-8")#这里必须是a

f.truncate(10)

29. 既能读也能写(读写)(用的比较多)

f=open("yesterday2",‘r+‘,encoding="utf-8")
print(f.readline())
print(f.readline())
print(f.readline())
f.write("===================")

30. 写读:是指先创建一个文件,然后再执行程序(没太多用处)

f=open("yesterday2",w+‘,encoding="utf-8")
print(f.readline())
print(f.readline())
print(f.readline())
f.write("===================")

31. 追加写(a+

32. 二进制格式读取文件,二进制是不能传输一个encoding文件的

f=open("yesterday2",rb)
用到二进制的地方:

1)在网络传输中会用到,网络传输只能用二进制模式。

2)在二进制文件中要用这种方式打开

f=open(“yesterday2”,‘wb’)

f.write(“hello binary\n”.encode())

f.close()

33. 二进制格式写文件

f=open("yesterday4",‘wb‘)
f.write("hello ,every".encode())

Python学习笔记

原文:https://www.cnblogs.com/mff-5830/p/10981801.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!