定义:模块是一组Python代码的集合,可以使用其他模块,也可以被其他模块使用。
创建自己的模块时,要注意:
1.模块名要遵循Python变量命名规范,不要使用中文、特殊字符。
2.模块名不要和系统模块名冲突,最好先查看系统是否已存在该模块,检查方法是 3.在Python交互环境执行import abc,若成功则说明系统存在此模块。
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
' a test module '
__author__ = 'Michael Liao'
import sys
def test():
args = sys.argv
if len(args)==1:
print('Hello, world!')
elif len(args)==2:
print('Hello, %s!' % args[1])
else:
print('Too many arguments!')
if __name__=='__main__':
test()
第1行和第2行是标准注释,第1行注释可以让这个hello.py文件直接在Unix/Linux/Mac上运行,第2行注释表示.py文件本身使用标准UTF-8编码;
第4行是一个字符串,表示模块的文档注释,任何模块代码的第一个字符串都被视为模块的文档注释;
第6行使用__author__变量把作者写进去,这样当你公开源代码后别人就可以瞻仰你的大名;
以上就是Python模块的标准文件模板,当然也可以全部删掉不写,但是,按标准办事肯定没错。
后面开始就是真正的代码部分。
你可能注意到了,使用sys模块的第一步,就是导入该模块:
import sys
导入sys模块后,我们就有了变量sys指向该模块,利用sys这个变量,就可以访问sys模块的所有功能。sys模块有一个argv变量,用list存储了命令行的所有参数。argv至少有一个元素,因为第一个参数永远是该.py文件的名称,例如:
运行python3 hello.py获得的sys.argv就是['hello.py'];
运行python3 hello.py Michael获得的sys.argv就是['hello.py', 'Michael']。
最后,注意到这两行代码:
if __name__=='__main__':
test()
当我们在命令行运行hello模块文件时,Python解释器把一个特殊变量__name__置为__main__,而如果在其他地方导入该hello模块时,if判断将失败,因此,这种if测试可以让一个模块通过命令行运行时执行一些额外的代码,最常见的就是运行测试。
import module_name: 注意首先你的被导入模块和你需要导入的模块必须位于同一个级别(可可以理解为同一目录) # 这种形式:导入这个module_name的全部内容
from module_name import 局部内容(变量, 函数, 类) # 这种形式:导入的是Module_name的局部内容,并且当导入多个局部内容使用逗号分隔。
例:
from test_module import data, data2
from module_name import 局部内容 as newname # 重命名: as
from test_module import data as haha # 将此模块名字改为 haha
例子:首先创建一个模块
创建模块:
import test_module
data = 1
data2 = 2
print(data)
print(data2)
被导入模块:
输入:
import test_module #全局导入
from test_module import data, data2 #局部导入
from test_module import data as d, data2 as d2 导入并改变变量名称
print(d)
print(d2)
结果
1
2
1
2
1
2
import sys
# 带v的意思: variable: 变量
print(sys.platform) #系统所在的平台是win32
print(sys.version) # python解释器的版本
print(sys.modules) # 当前有哪些模块
print(sys.path) # python模块的搜索路径: 先后顺序的
print(sys.api_version) #1013
print(sys.argv) #代表使用pythonProject4 main.py传入的参数 是一个列表
结果
win32
3.9.0 (tags/v3.9.0:9cf6752, Oct 5 2020, 15:34:40) [MSC v.1927 64 bit (AMD64)]
{'sys': <module 'sys' (built-in)>, 'builtins': <module 'builtins' (built-in)>, '_frozen_importlib': <module '_frozen_importlib' (frozen)>, '_imp': <module '_imp' (built-in)>, '_thread': <module '_thread' (built-in)>, '_warnings': <module '_warnings' (built-in)>, '_weakref': <module '_weakref' (built-in)>, '_frozen_importlib_external': <module '_frozen_importlib_external' (frozen)>, 'nt': <module 'nt' (built-in)>, '_io': <module 'io' (built-in)>, 'marshal': <module 'marshal' (built-in)>, 'winreg': <module 'winreg' (built-in)>, 'time': <module 'time' (built-in)>, 'zipimport': <module 'zipimport' (frozen)>, '_codecs': <module '_codecs' (built-in)>, 'codecs': <module 'codecs' from 'D:\\python\\PYTHON\\lib\\codecs.py'>, 'encodings.aliases': <module 'encodings.aliases' from 'D:\\python\\PYTHON\\lib\\encodings\\aliases.py'>, 'encodings': <module 'encodings' from 'D:\\python\\PYTHON\\lib\\encodings\\__init__.py'>, 'encodings.utf_8': <module 'encodings.utf_8' from 'D:\\python\\PYTHON\\lib\\encodings\\utf_8.py'>, '_signal': <module '_signal' (built-in)>, 'encodings.latin_1': <module 'encodings.latin_1' from 'D:\\python\\PYTHON\\lib\\encodings\\latin_1.py'>, '_abc': <module '_abc' (built-in)>, 'abc': <module 'abc' from 'D:\\python\\PYTHON\\lib\\abc.py'>, 'io': <module 'io' from 'D:\\python\\PYTHON\\lib\\io.py'>, '__main__': <module '__main__' from 'D:\\pythonProject4\\main.py'>, '_stat': <module '_stat' (built-in)>, 'stat': <module 'stat' from 'D:\\python\\PYTHON\\lib\\stat.py'>, '_collections_abc': <module '_collections_abc' from 'D:\\python\\PYTHON\\lib\\_collections_abc.py'>, 'genericpath': <module 'genericpath' from 'D:\\python\\PYTHON\\lib\\genericpath.py'>, 'ntpath': <module 'ntpath' from 'D:\\python\\PYTHON\\lib\\ntpath.py'>, 'os.path': <module 'ntpath' from 'D:\\python\\PYTHON\\lib\\ntpath.py'>, 'os': <module 'os' from 'D:\\python\\PYTHON\\lib\\os.py'>, '_sitebuiltins': <module '_sitebuiltins' from 'D:\\python\\PYTHON\\lib\\_sitebuiltins.py'>, '_heapq': <module '_heapq' (built-in)>, 'heapq': <module 'heapq' from 'D:\\python\\PYTHON\\lib\\heapq.py'>, 'itertools': <module 'itertools' (built-in)>, 'keyword': <module 'keyword' from 'D:\\python\\PYTHON\\lib\\keyword.py'>, '_operator': <module '_operator' (built-in)>, 'operator': <module 'operator' from 'D:\\python\\PYTHON\\lib\\operator.py'>, 'reprlib': <module 'reprlib' from 'D:\\python\\PYTHON\\lib\\reprlib.py'>, '_collections': <module '_collections' (built-in)>, 'collections': <module 'collections' from 'D:\\python\\PYTHON\\lib\\collections\\__init__.py'>, 'types': <module 'types' from 'D:\\python\\PYTHON\\lib\\types.py'>, '_functools': <module '_functools' (built-in)>, 'functools': <module 'functools' from 'D:\\python\\PYTHON\\lib\\functools.py'>, 'enum': <module 'enum' from 'D:\\python\\PYTHON\\lib\\enum.py'>, '_sre': <module '_sre' (built-in)>, 'sre_constants': <module 'sre_constants' from 'D:\\python\\PYTHON\\lib\\sre_constants.py'>, 'sre_parse': <module 'sre_parse' from 'D:\\python\\PYTHON\\lib\\sre_parse.py'>, 'sre_compile': <module 'sre_compile' from 'D:\\python\\PYTHON\\lib\\sre_compile.py'>, '_locale': <module '_locale' (built-in)>, 'copyreg': <module 'copyreg' from 'D:\\python\\PYTHON\\lib\\copyreg.py'>, 're': <module 're' from 'D:\\python\\PYTHON\\lib\\re.py'>, 'token': <module 'token' from 'D:\\python\\PYTHON\\lib\\token.py'>, 'tokenize': <module 'tokenize' from 'D:\\python\\PYTHON\\lib\\tokenize.py'>, 'linecache': <module 'linecache' from 'D:\\python\\PYTHON\\lib\\linecache.py'>, 'traceback': <module 'traceback' from 'D:\\python\\PYTHON\\lib\\traceback.py'>, 'sitecustomize': <module 'sitecustomize' from 'D:\\python\\PYCHARM\\PyCharm 2020.2.3\\plugins\\python\\helpers\\pycharm_matplotlib_backend\\sitecustomize.py'>, 'site': <module 'site' from 'D:\\python\\PYTHON\\lib\\site.py'>, 'test_module': <module 'test_module' from 'D:\\pythonProject4\\test_module.py'>}
['D:\\pythonProject4', 'D:\\pythonProject4', 'D:\\pythonProject3', 'D:\\python\\PYCHARM\\PyCharm 2020.2.3\\plugins\\python\\helpers\\pycharm_display', 'D:\\python\\PYTHON\\python39.zip', 'D:\\python\\PYTHON\\DLLs', 'D:\\python\\PYTHON\\lib', 'D:\\python\\PYTHON', 'D:\\python\\PYTHON\\lib\\site-packages', 'D:\\python\\PYCHARM\\PyCharm 2020.2.3\\plugins\\python\\helpers\\pycharm_matplotlib_backend']
1013
['D:/pythonProject4/main.py']
print(os.name) #Windows NT(New Technology)是微软发布的桌面端操作系统,于1993年7月27日发布,该操作系统适用于一部分Windows电脑。
print(os.curdir) # 列出所有的文件和目录, 默认是输出当前工作路径下的所有文件
print(os.listdir()) #列出当前文件所在目录所有内容
print(os.environ) #列出当前系统所有目录
print(os.getcwd()) #列出当前文件所在的目录名称
print(os.system("dir")) # 查看某个目录
#print(os.mkdir()) #创建目录
#print(os.rmdir()) #删除目录
print(os.cpu_count()) #当前系统处理器数
#print(os.path.split("D:\\test\\test2")) split: 分割: 分割前边的路径和最后一个文件或目录合并两个路径 d: test => d:\test
#print(os.path.join("D:\\test", "sys_test.py")) 合并两个路径 d: test => d:\test判断你给的这个路径是否是一个目录
#print(os.path.isdir("D:\\test\sys_test.py")) 判断你给的这个路径是否是一个目录你给定的路径是否是一个文件
#print(os.path.isfile("D:\\test\sys_test.py")) 判断你给定的路径是否是一个文件
#print(os.path.abspath(".")) absolute path: 绝对路径
#print(os.path.exists("D:\\20211010")) #给定的路径是否存在
#print(os.path.dirname("D:\\test\sys_test.py")) 获取目录名
#print(os.path.getsize("D:\setup_data\CentOS-7-x86_64-DVD-1810.iso")) 获取文件大小 73B 单位一定是字节
结果:
win32
3.9.0 (tags/v3.9.0:9cf6752, Oct 5 2020, 15:34:40) [MSC v.1927 64 bit (AMD64)]
{'sys': <module 'sys' (built-in)>, 'builtins': <module 'builtins' (built-in)>, '_frozen_importlib': <module '_frozen_importlib' (frozen)>, '_imp': <module '_imp' (built-in)>, '_thread': <module '_thread' (built-in)>, '_warnings': <module '_warnings' (built-in)>, '_weakref': <module '_weakref' (built-in)>, '_frozen_importlib_external': <module '_frozen_importlib_external' (frozen)>, 'nt': <module 'nt' (built-in)>, '_io': <module 'io' (built-in)>, 'marshal': <module 'marshal' (built-in)>, 'winreg': <module 'winreg' (built-in)>, 'time': <module 'time' (built-in)>, 'zipimport': <module 'zipimport' (frozen)>, '_codecs': <module '_codecs' (built-in)>, 'codecs': <module 'codecs' from 'D:\\python\\PYTHON\\lib\\codecs.py'>, 'encodings.aliases': <module 'encodings.aliases' from 'D:\\python\\PYTHON\\lib\\encodings\\aliases.py'>, 'encodings': <module 'encodings' from 'D:\\python\\PYTHON\\lib\\encodings\\__init__.py'>, 'encodings.utf_8': <module 'encodings.utf_8' from 'D:\\python\\PYTHON\\lib\\encodings\\utf_8.py'>, '_signal': <module '_signal' (built-in)>, 'encodings.latin_1': <module 'encodings.latin_1' from 'D:\\python\\PYTHON\\lib\\encodings\\latin_1.py'>, '_abc': <module '_abc' (built-in)>, 'abc': <module 'abc' from 'D:\\python\\PYTHON\\lib\\abc.py'>, 'io': <module 'io' from 'D:\\python\\PYTHON\\lib\\io.py'>, '__main__': <module '__main__' from 'D:\\pythonProject4\\main.py'>, '_stat': <module '_stat' (built-in)>, 'stat': <module 'stat' from 'D:\\python\\PYTHON\\lib\\stat.py'>, '_collections_abc': <module '_collections_abc' from 'D:\\python\\PYTHON\\lib\\_collections_abc.py'>, 'genericpath': <module 'genericpath' from 'D:\\python\\PYTHON\\lib\\genericpath.py'>, 'ntpath': <module 'ntpath' from 'D:\\python\\PYTHON\\lib\\ntpath.py'>, 'os.path': <module 'ntpath' from 'D:\\python\\PYTHON\\lib\\ntpath.py'>, 'os': <module 'os' from 'D:\\python\\PYTHON\\lib\\os.py'>, '_sitebuiltins': <module '_sitebuiltins' from 'D:\\python\\PYTHON\\lib\\_sitebuiltins.py'>, '_heapq': <module '_heapq' (built-in)>, 'heapq': <module 'heapq' from 'D:\\python\\PYTHON\\lib\\heapq.py'>, 'itertools': <module 'itertools' (built-in)>, 'keyword': <module 'keyword' from 'D:\\python\\PYTHON\\lib\\keyword.py'>, '_operator': <module '_operator' (built-in)>, 'operator': <module 'operator' from 'D:\\python\\PYTHON\\lib\\operator.py'>, 'reprlib': <module 'reprlib' from 'D:\\python\\PYTHON\\lib\\reprlib.py'>, '_collections': <module '_collections' (built-in)>, 'collections': <module 'collections' from 'D:\\python\\PYTHON\\lib\\collections\\__init__.py'>, 'types': <module 'types' from 'D:\\python\\PYTHON\\lib\\types.py'>, '_functools': <module '_functools' (built-in)>, 'functools': <module 'functools' from 'D:\\python\\PYTHON\\lib\\functools.py'>, 'enum': <module 'enum' from 'D:\\python\\PYTHON\\lib\\enum.py'>, '_sre': <module '_sre' (built-in)>, 'sre_constants': <module 'sre_constants' from 'D:\\python\\PYTHON\\lib\\sre_constants.py'>, 'sre_parse': <module 'sre_parse' from 'D:\\python\\PYTHON\\lib\\sre_parse.py'>, 'sre_compile': <module 'sre_compile' from 'D:\\python\\PYTHON\\lib\\sre_compile.py'>, '_locale': <module '_locale' (built-in)>, 'copyreg': <module 'copyreg' from 'D:\\python\\PYTHON\\lib\\copyreg.py'>, 're': <module 're' from 'D:\\python\\PYTHON\\lib\\re.py'>, 'token': <module 'token' from 'D:\\python\\PYTHON\\lib\\token.py'>, 'tokenize': <module 'tokenize' from 'D:\\python\\PYTHON\\lib\\tokenize.py'>, 'linecache': <module 'linecache' from 'D:\\python\\PYTHON\\lib\\linecache.py'>, 'traceback': <module 'traceback' from 'D:\\python\\PYTHON\\lib\\traceback.py'>, 'sitecustomize': <module 'sitecustomize' from 'D:\\python\\PYCHARM\\PyCharm 2020.2.3\\plugins\\python\\helpers\\pycharm_matplotlib_backend\\sitecustomize.py'>, 'site': <module 'site' from 'D:\\python\\PYTHON\\lib\\site.py'>, 'test_module': <module 'test_module' from 'D:\\pythonProject4\\test_module.py'>}
['D:\\pythonProject4', 'D:\\pythonProject4', 'D:\\pythonProject3', 'D:\\python\\PYCHARM\\PyCharm 2020.2.3\\plugins\\python\\helpers\\pycharm_display', 'D:\\python\\PYTHON\\python39.zip', 'D:\\python\\PYTHON\\DLLs', 'D:\\python\\PYTHON\\lib', 'D:\\python\\PYTHON', 'D:\\python\\PYTHON\\lib\\site-packages', 'D:\\python\\PYCHARM\\PyCharm 2020.2.3\\plugins\\python\\helpers\\pycharm_matplotlib_backend']
1013
['D:/pythonProject4/main.py']
nt
.
['.idea', '1', '1.jpg', '2.jpg', 'file.txt', 'file1.txt', 'main.py', 'test_module.py', '__pycache__']
environ({'ALLUSERSPROFILE': 'C:\\ProgramData', 'APPDATA': 'C:\\Users\\Administrator\\AppData\\Roaming', 'COMMONPROGRAMFILES': 'C:\\Program Files\\Common Files', 'COMMONPROGRAMFILES(X86)': 'C:\\Program Files (x86)\\Common Files', 'COMMONPROGRAMW6432': 'C:\\Program Files\\Common Files', 'COMPUTERNAME': 'DESKTOP-KKQJA1H', 'COMSPEC': 'C:\\WINDOWS\\system32\\cmd.exe', 'DRIVERDATA': 'C:\\Windows\\System32\\Drivers\\DriverData', 'FPS_BROWSER_APP_PROFILE_STRING': 'Internet Explorer', 'FPS_BROWSER_USER_PROFILE_STRING': 'Default', 'HOMEDRIVE': 'C:', 'HOMEPATH': '\\Users\\Administrator', 'IDEA_INITIAL_DIRECTORY': 'C:\\Users\\Administrator\\Desktop', 'LOCALAPPDATA': 'C:\\Users\\Administrator\\AppData\\Local', 'LOGONSERVER': '\\\\DESKTOP-KKQJA1H', 'NUMBER_OF_PROCESSORS': '8', 'ONEDRIVE': 'C:\\Users\\Administrator\\OneDrive', 'ONEDRIVECONSUMER': 'C:\\Users\\Administrator\\OneDrive', 'OS': 'Windows_NT', 'PATH': 'D:\\csa安装包\\;D:\\python\\Scripts\\;D:\\python\\;C:\\WINDOWS\\system32;C:\\WINDOWS;C:\\WINDOWS\\System32\\Wbem;C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\;C:\\WINDOWS\\System32\\OpenSSH\\;D:\\;C:\\Users\\Administrator\\AppData\\Local\\Microsoft\\WindowsApps;C:\\Users\\Administrator\\AppData\\Roaming\\npm', 'PATHEXT': '.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.PYW', 'PROCESSOR_ARCHITECTURE': 'AMD64', 'PROCESSOR_IDENTIFIER': 'Intel64 Family 6 Model 142 Stepping 12, GenuineIntel', 'PROCESSOR_LEVEL': '6', 'PROCESSOR_REVISION': '8e0c', 'PROGRAMDATA': 'C:\\ProgramData', 'PROGRAMFILES': 'C:\\Program Files', 'PROGRAMFILES(X86)': 'C:\\Program Files (x86)', 'PROGRAMW6432': 'C:\\Program Files', 'PSMODULEPATH': 'C:\\Program Files\\WindowsPowerShell\\Modules;C:\\WINDOWS\\system32\\WindowsPowerShell\\v1.0\\Modules', 'PT5HOME': 'C:\\Cisco Packet Tracer 6.1iv', 'PT6HOME': 'C:\\Cisco Packet Tracer 6.1iv', 'PUBLIC': 'C:\\Users\\Public', 'PYCHARM_DISPLAY_PORT': '63342', 'PYCHARM_HOSTED': '1', 'PYTHONIOENCODING': 'UTF-8', 'PYTHONPATH': 'D:\\pythonProject4;D:\\pythonProject3;D:\\python\\PYCHARM\\PyCharm 2020.2.3\\plugins\\python\\helpers\\pycharm_matplotlib_backend;D:\\python\\PYCHARM\\PyCharm 2020.2.3\\plugins\\python\\helpers\\pycharm_display', 'PYTHONUNBUFFERED': '1', 'SESSIONNAME': 'Console', 'SYSTEMDRIVE': 'C:', 'SYSTEMROOT': 'C:\\WINDOWS', 'TEMP': 'C:\\Users\\ADMINI~1\\AppData\\Local\\Temp', 'TMP': 'C:\\Users\\ADMINI~1\\AppData\\Local\\Temp', 'USERDOMAIN': 'DESKTOP-KKQJA1H', 'USERDOMAIN_ROAMINGPROFILE': 'DESKTOP-KKQJA1H', 'USERNAME': 'Administrator', 'USERPROFILE': 'C:\\Users\\Administrator', 'VBOX_MSI_INSTALL_PATH': 'D:\\virtualbox\\', 'WINDIR': 'C:\\WINDOWS', 'ZES_ENABLE_SYSMAN': '1'})
D:\pythonProject4
������ D �еľ��� Data
�������� E270-CB99
D:\pythonProject4 ��Ŀ¼
2021/11/01 20:19 <DIR> .
2021/11/01 20:19 <DIR> ..
2021/11/01 20:12 <DIR> .idea
2021/11/01 19:43 <DIR> 1
2021/10/27 16:43 36,937 1.jpg
2021/10/27 17:58 36,937 2.jpg
2021/11/01 20:19 13 file.txt
2021/10/27 16:29 30 file1.txt
2021/11/01 20:19 15,059 main.py
2021/11/01 19:45 66 test_module.py
2021/11/01 19:45 <DIR> __pycache__
6 ���ļ� 89,042 �ֽ�
5 ��Ŀ¼ 356,275,507,200 �����ֽ�
0
8
Process finished with exit code 0
import random
print(random.random()) #任意的返回一个小数
print(random.randint(0, 100)) #任意返回一个(0,100)中的整数
print(random.choice([4, 5, 6])) #从给列表中选择一个
print(random.choices([4, 5, 6, 7, 8], cum_weights=[1, 2, 3, 4, 5], k=2))
#choices(self, population, weights=None, *, cum_weights=None, k=1)
# 返回一个k大小的列表
# weights: 权重, 权重大的选中的几率高一些
# cum_weights: 累加权重
print(random.sample([4, 5, 6, 7, 8], k=2))
#def sample(self, population, k, *, counts=None: 选择k个唯一的随机元素从取样的序列或者集合中
print(random.randrange(1, 10)) #给定范围内随机一个整数
结果:
0.4779377870840117
28
4
[7, 7]
[4, 5]
6
import time
print(time.localtime()) #将一个时间戳转换为当前时区的struct_time。
print(time.gmtime()) #是将一个时间戳转换为UTC时区(0时区)的struct_time。
data = time.time() #返回当前时间的时间戳。
print(data)
time.sleep(2) #线程推迟指定的时间运行。单位为秒。
print(time.time() - data)
print(time.timezone) #-28800 => 28800是一个秒数 =》 小时是8
print(time.strftime("%Y-%m-%d, %H:%M:%S, %j, %W, %w, %Z, %z", time.localtime()))
'''把一个代表时间的元组或者struct_time转化为格式化的时间字符串。
t默认为当前时间。
%a 本地(locale)简化星期名称
%A 本地完整星期名称
%b 本地简化月份名称
%B 本地完整月份名称
%c 本地相应的日期和时间表示
%d 一个月中的第几天(01 - 31)
%H 一天中的第几个小时(24小时制,00 - 23)
%I 第几个小时(12小时制,01 - 12)
%j 一年中的第几天(001 - 366)
%m 月份(01 - 12)
%M 分钟数(00 - 59)
%p 本地am或者pm的相应符
%S 秒(01 - 61)
%U 一年中的星期数。(00 - 53星期天是一个星期的开始。)第一个星期天之前的所有天数都放在第0周。
%w 一个星期中的第几天(0 - 6,0是星期天)
%W 和%U基本相同,不同的是%W以星期一为一个星期的开始。
%x 本地相应日期
%X 本地相应时间
%y 去掉世纪的年份(00 - 99)
%Y 完整的年份
%Z 时区的名字(如果不存在为空字符)
%% ‘%’字符'''
print(time.ctime()) #把一个时间戳转化为time.asctime()的形式。默认值为当前时间。
结果:
time.struct_time(tm_year=2021, tm_mon=11, tm_mday=1, tm_hour=20, tm_min=43, tm_sec=17, tm_wday=0, tm_yday=305, tm_isdst=0)
time.struct_time(tm_year=2021, tm_mon=11, tm_mday=1, tm_hour=12, tm_min=43, tm_sec=17, tm_wday=0, tm_yday=305, tm_isdst=0)
1635770597.4517884
2.0136446952819824
-28800
2021-11-01, 20:43:19, 305, 44, 1, 中国标准时间, +0800
Mon Nov 1 20:43:19 2021
"""
json: 现在在web中比较流行一种传输数据的方式
在编程中,别人给你提供了一个接口:
get_students_by_classno(classno):
根据班级编号来获取学生信息
数据格式: 就可以是我们json格式
和我们字典比较像
第一种:将python对象,转换成json格式的数据
第二种:将json格式的数据,转换成python对象
"""
输入:
import json
dict_data = {1: 2, 2: 3}
data = json.dumps(dict_data) #把一个字典转换成一个json格式的字符串
print(data, type(data))
dict_data2 = json.loads(data) #把一个json格式的字符串转换成一个python中的字典对象
print(dict_data, type(dict_data))
输出:
{"1": 2, "2": 3} <class 'str'>
{1: 2, 2: 3} <class 'dict'>