18.configparser模块

# 创建配置文件
import configparser
config = configparser.ConfigParser()   # 相当于config = {} 空字典

config["default"] = {"ServerAliveInterval":"45",
                               "Compression": "yes",
                              "CompressionLevel": "9"}

config['DEFAULT']['ForwardX11'] = 'yes'

config['bitbucket.org'] = {}
config['bitbucket.org']['User'] = 'hg'

config['topsecret.server.com'] = {}
topsecret = config['topsecret.server.com']
topsecret['Host Port'] = '50022'     # mutates the parser
topsecret['ForwardX11'] = 'no'  # same here


with open("example.ini","w") as f:
    config.write(f)
# 增删改配置文件
import
configparser config = configparser.ConfigParser() config.read("example.ini") # 读出来 print(config.sections()) # ['bitbucket.org', 'topsecret.server.com'] print(config["bitbucket.org"]["User"]) # hg defalut 的信息也会被遍历出来 for key in config["bitbucket.org"]: print(key) # ['user', 'serveraliveinterval', 'compression', 'compressionlevel', 'forwardx11'] print(config.options("bitbucket.org")) # [('serveraliveinterval', '45'), ('compression', 'yes'), ('compressionlevel', '9'), ('forwardx11', 'yes'), ('user', 'hg')] print(config.items("bitbucket.org")) # yes print(config.get("bitbucket.org", "compression")) # config.add_section("yun") # 生成新的块 # config.set("yun", "name", "alex") # 给新的块设置值 # config.remove_section("topsecret.server.com") # 删除块 # config.remove_option("bitbucket.org", "user") # 删除键值 # config.write(open("i.cfg", "w")) # 重新生成配置文件

 os模块:

 1 # os模块________________________
 2 print(os.getcwd())  # 当前工作目录
 3 os.chdir("tmp")  # 改变当前工作目录
 4 print(os.getcwd())
 5 
 6 # os.makedirs("dirname1/dirname2")  # 建多个
 7 # os.removedirs("dirname1/dirname2")  # 删除空目录(如果不为空不删除)
 8 # print(os.mkdir("t4.py"))  #创建单个文件夹
 9 # print(os.rmdir("t4.py"))  # 删除单个目录,目录必须为空
10 # print(os.remove("__init__.py"))  # 删除一个文件
11 # print(os.rename("test.py", "test2.py")) # 修改文件名 ("oldname","newname")
12  
13 print(os.listdir())  # 工作目录下载所有文件
14 
15 print(os.stat("test.py"))  # 文件创建以及其他一系列的信息
16 print(os.sep)   # 当前操作系统的路径分隔符\
17 print(os.linesep)  # window \t\n linux\n
18 print(os.pathsep)  # ; 分割文件路径  linux用:(冒号)
19 # print(os.system("dir"))   # 执行命令
20 
21 print(os.path.split("test/file.py"))  # 路径分割
22 print(os.path.dirname("test/file.py"))    # 拿到上级目录
23 print(os.path.basename("test/file.py"))    # 拿到文件名
24 
25 # 下面是用来是判断绝对路径
26 print(os.path.exists(r"Users\lzh\PycharmProjects\day05"))
27 print(os.path.exists(r"C:\Users\lzh\PycharmProjects\day05\t1.py"))
28 print(os.path.isabs(r"C:\Users\lzh\PycharmProjects\day05\t1.py"))  # 是否是绝对路径
29 print(os.path.isfile(r"C:\Users\lzh\PycharmProjects\day05\t1.py"))
30 print(os.path.isdir(r"C:\Users\lzh\PycharmProjects\day05"))
31 print(os.path.getatime(r"C:\Users\lzh\PycharmProjects\day05"))  # 最后的存取时间
32 t1 = os.path.getatime(r"C:\Users\lzh\PycharmProjects\day05")
33 print(os.path.getmtime(r"C:\Users\lzh\PycharmProjects\day05"))  # 最后修改时间
34 print(os.environ)
View Code

 random模块:

 1 # random模块______________________
 2 
 3 import random
 4 print("_____________________")
 5 ret = random.random()  # 0.7300862907438088
 6 print(ret)
 7 print(random.randint(1, 3))  # [1, 3]  之间的随机整数
 8 print(random.randrange(1, 3))   # [1,3)
 9 print(random.choice([1, 3, 4]))  # 随机选取
10 print(random.sample([1, 2, 3, 4], 2))  # [2, 1]
11 print(random.uniform(1, 4))  # (1, 4)之间的浮点数
12 print(random.shuffle([1, 2, 3, 4, 5]))   # 打乱可迭代对象中的顺序
13 
14 # 验证码
15 def v_code():
16     ret = ""
17     for i in range(5):
18         num = random.randint(0, 9)
19         alf = random.randint(65, 122)
20         s = str(random.choice([num, chr(alf)]))  # 相同的概率拿到
21         ret += s
22     return ret
23 print(v_code())
View Code

 

# json模块(数据交换)
dict = '{"name":"alex"}'
f = open("hello", "w")
f.write(dict)

# f_read = open("hello", 'r')
# data = f_read.read()
# print(type(data))
# data = eval(data)
# print(data["name"])

import json
f = open("hello", "w")
dict = {"name": "alex"}
print(json.dumps(dict))
dict = json.dumps(dict)  # 等价于json.dump(dict, f)
f.write(dict)


f_read = open("hello", 'r')
json.loads(f_read.read())  # 等价于json.load(f_read)
# 文件操作




# pickle模块
import pickle
j = pickle.dumps(dict)
print(type(j))   # 字节

f = open("序列化对象——pickle", 'wb')
f.write(j)   # 等价于pickle.dump(dic, f# )
f.close()

f_read = open("序列化对象——pickle", 'rb')
data = pickle.loads(f_read.read())  # 等价于 pickle.load(f)


# shelve模块
import shelve

f = shelve.open(r"shelve")

# f["info"] = {"name": "alex3"}
# f["info2"] = {"name": "alex2", "age", : 20}
# f["info"] = {"name": "alex1", "age", : 20, "gender": ""}

# f.close()

print(f.get("info")["name"])
json相关模块

 

import sys
import time

a = 1
if a == 1:
    print("a==1")

print(sys.platform)
print(sys.argv)
# command = sys.argv[1]
# path = sys.argv[2]

# if command == "post":
#     pass
# elif command == "get":
#     pass


# for i in range(100):
#     sys.stdout.write("#")
#     time.sleep(0.1)
#     sys.stdout.flush()
print(sys.path)
print(sys.version)
# print(sys.exit(1))
sys
posted @ 2019-12-03 14:48  楠海  阅读(297)  评论(0编辑  收藏  举报