python3基础4

集合操作

集合是一个无序的,不重复的数据组合,它的主要作用如下:

  • 去重,把一个列表变成集合,就自动去重了

  • 关系测试,测试两组数据之前的交集、差集、并集等关系

In [1]: s=set([1,2,3,4])  #创建一个数字集合

In [2]: s

Out[2]: {1, 2, 3, 4}

In [3]: t=set("hello")    #创建一个字符集合

In [4]: t

Out[4]: {'e', 'h', 'l', 'o'}

In [5]: a=t|s       #s与t 的并集

In [6]: a

Out[6]: {1, 2, 3, 4, 'e', 'h', 'l', 'o'}

In [7]: b=t&s        # s与t的交集

In [8]: b

Out[8]: set()

In [9]: c=t-s          #求差集(项在t中,但不在s中)

In [10]: c

Out[10]: {'e', 'h', 'l', 'o'}

In [11]: d=t^s         #求对称差集(项在t或s中,但不会同时出现在二者中)

In [12]: d

Out[12]: {1, 2, 3, 4, 'e', 'h', 'l', 'o'}

In [13]: t.add('x')      #添加一项

In [14]: t

Out[14]: {'e', 'h', 'l', 'o', 'x'}

In [15]: s.update({5,6,7})     #添加多项

In [16]: s

Out[16]: {1, 2, 3, 4, 5, 6, 7}

In [17]: s.add(8)

In [18]: s

Out[18]: {1, 2, 3, 4, 5, 6, 7, 8}

In [19]: s.remove(8)     #删除其中一项

In [20]: s

Out[20]: {1, 2, 3, 4, 5, 6, 7}

In [21]: len(s)          #求长度

Out[21]: 7

In [22]: s.issubset(t)    #测试是否s中的每一个元素都在t中

Out[22]: False

In [23]: s.issuperset(t)    #测试是否t中的每一个元素都在s中

Out[23]: False

tell():打印当前的光标位置以字符为单位

seek():回到起始位置

文件操作

 

f=open("song",encoding="utf-8") #打开文件
# first_line=f.readline()   #读取其中一行
# print("first line:",first_line)
# f.close()
# f=open("yesterday","a",encoding="utf-8")  #文件追加
#
# f.write("\n我爱北京天安门!!")
#
# f.close()
f=open("song","r",encoding="utf-8")
# for i in range(5):
#     print(f.readline())
# count=0
# for line in f.readlines():
#     count+=1
#     if count==5:
#         print("---------------------")
#         continue
#     print(line.strip())

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

for line in f:
    print(line)

f.close()

打开文件的模式有:

  • r,只读模式(默认)。

  • w,只写模式。【不可读;不存在则创建;存在则删除内容;】

  • a,追加模式。【可读;   不存在则创建;存在则只追加内容;】

"+" 表示可以同时读写某个文件

  • r+,可读写文件。【可读;可写;可追加】

  • w+,写读

  • a+,同a

"U"表示在读取时,可以将 \r \n \r\n自动转换成 \n (与 r 或 r+ 模式同使用)

  • rU

  • r+U

"b"表示处理二进制文件(如:FTP发送上传ISO镜像文件,linux可忽略,windows处理二进制文件时需标注)

  • rb

  • wb

  • ab

#f=open("song","rb")  #读取二进制文件
f=open("song","wb")  #写二进制文件
# print(f.readline())
f.write("hello binary\n".encode())
f.close()

打印进度条

 

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

 

posted @ 2018-02-21 17:12  柠檬不酸i  阅读(119)  评论(0编辑  收藏  举报