【python】模块基础

模块的导入方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
demo1.py>>
def test1():
print("demo1_test1")

def test2():
print("demo1_test2")

demo2.py>>
# import demo1
# demo1.test1()
# demo1.test2()

# from demo1 import test1,test2
# test1()
# test2()

# from demo1 import *
# test1()
# test2()

from demo1 import test1 as demo1_test1

def test1():
print("demo2_test1")

def test2():
print("demo2_test2")

test1()
demo1_test1()

内置模块

sys模块

sys.argv与外部对接模块

1
2
3
4
5
6
7
8
import sys
#print(sys.argv[0]) # 程序本身路径
#与外部对接的传参作用

res = sys.argv[1]
#print(res)
if res == 'yes':
print("i am ok")

命令行

1
2
3
C:\Users\23242\AppData\Local\Temp\81.py1>python3 demo2.py yes

i am ok

其他sys的使用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import sys
#print(sys.argv[0]) # 程序本身路径
#与外部对接的传参作用

# res = sys.argv[1]
# #print(res)
# if res == 'yes':
# print("i am ok")

# sys.version()>>解释器的版本信息
#print(sys.version)

#模块搜索路径
#print(sys.path)

print('111')
#断点
#sys.exit()
print('222')

os模块

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import os
# #print(os.getcwd()) #
# os.chdir('D:')# 改变路径
# print(os.getcwd()) #获取当前路径

#os.makedirs('China\\ChangSha') # 递归创建路径 存在 在创建会报错
# os.removedirs('China\\ChangSha') # 删除的目录只能是空的

#os.mkdir('China\\Changsha') # 单个文件夹创建
#os.rmdir('China') #单个文件夹删除

# print(os.path.exists("China\\ChangSha")) #判断路径是否存在

dirpath = 'Py\\doc'
if not os.path.exists(dirpath):
os.makedirs(dirpath)

#os.path.join() 拼接路径
res = os.path.join(os.getcwd(),'demo5')
print(res)

time模块

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import time
# print('1111')
# time.sleep(2.0) # 延迟时间,强制等待
# print('23123')

#print(time.time()) # 秒时间戳

#print(time.localtime()) #seconds --》()元组
'''
2020-02-09
'''
#print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime()))拼接时间格式

import datetime
# print(datetime.datetime.now()) #当前时间

# print(datetime.datetime.now()-datetime.timedelta(days=7)) 减七天

random模块

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
import random
# print(random.random()) # [0-1)

# print(random.randint(1,10)) # [a,b]

# print(random.choice("123131")) # 从序列中随机选一个
#
# li = [1,2,3,4]
# tu = (1,2,3,4)
# random.shuffle(li) # 打乱序列
# print(li)

# li = [1,2,3,4]
# print(random.sample(li,2)) # 随机抽样

# 1,3,5,7,9
# print(random.randrange(1,10,2)) #和range差不多

'''
1、随机生成6位数验证码
1-1. 使用随机数字
1-2. 随机混合数字与字母
'''
def v_code():
code = ''
for i in range(3):


li_range = [0,'1','A','B','C']
add_num = random.sample(li_range,2) #[]
add_num = map(str,add_num)
code += ''.join(add_num)

#num = random.randint(0,9)
#print(num)
# code += str(num)
print(code)
v_code()

'''
A --> ascii
ord() 字符转ascii
ch() ascii转字符
'''

# print(ord('A'))
# print(chr(65))
def v_code():
code = ''
for i in range(6):
num = random.randrange(10) #[0~9]
char = chr(random.randrange(65,91)) # [A-Z]

add_num = random.choice([num,char])
code += str(add_num)
print(code)
v_code()

Json模块

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import json

#字典转json
# data = {"name":"amy"} # dict -->str
# print(type(data))
# # s = str(data)
# # print(s)
# res = json.dumps(data) # dict --> json
# print(res) # '{"name" : "amy"}' Json格式
# print(type(res))

#json转字典
j_data = '{"name" : "amy"}' # json --> dict 内部数据是双引号包裹
print((json.loads(j_data))['name'])
print(type(json.loads(j_data)))

IO模块

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import io

# s=io.StringIO()
# # print(type(s))
# s.write('this\nis\na\ngreat\nworld!')
# print(s.getvalue().strip()) #读取全部内容
# s.close()

# BytesIO
# b=io.BytesIO(b'a')
#
# b.write('bbb'.encode(''))
# print(b.getvalue())

# 存储图片 BytesIO
import requests
res = requests.get('https://img.zcool.cn/community/0170cb554b9200000001bf723782e6.jpg@1280w_1l_2o_100sh.jpg')
print(type(res.content))
img=io.BytesIO(res.content)
print(img.getvalue())

threading模块

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import time
import threading

def read():
while True:
print('在%s,正在读书' %time.ctime())
time.sleep(1)
def write():
for x in range(3):
print('在%s,正在写字' %time.ctime())
time.sleep(1)

for i in range(1,10):
t=threading.Thread(target=read).start()
for i in range(1,10):
t=threading.Thread(target=write).start()

本文标题:【python】模块基础

文章作者:孤桜懶契

发布时间:2021年07月08日 - 22:00:00

最后更新:2022年05月20日 - 11:47:45

原始链接:https://gylq.gitee.io/posts/96.html

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

-------------------本文结束 感谢您的阅读-------------------