摘要: # json: {} 与 [] 嵌套的数据 # 注:json中的字符串必须全部用""来标识 ''' 序列化:对象 => 字符串 序列化成字符串:json.dumps(json_obj) 序列化字符串到文件中:json.dump(json_obj, write_file) # 注:字符形式操作 反序列化成对象:json.loads(json_str) 从文件读流中反序列化成对象:json.loa... 阅读全文
posted @ 2019-05-08 20:36 挺锅锅 阅读(83) 评论(0) 推荐(0) 编辑
摘要: ''' 执行文件的当前路径:__file__ 返回path规范化的绝对路径:os.path.abspath(path) 将path分割成目录和文件名二元组返回:os.path.split(path) 上一级目录:os.path.dirname(path) 最后一级名称:os.path.basename(path) 指定路径是否存在:os.path.exists(path) 是否是绝对路... 阅读全文
posted @ 2019-05-08 20:35 挺锅锅 阅读(85) 评论(0) 推荐(0) 编辑
摘要: ''' (0, 1):random.random() [1, 10]:random.randint(1, 10) [1, 10):random.randrange(1, 10) (1, 10):random.uniform(1, 10) 单例集合随机选择1个:random.choice(item) 单例集合随机选择n个:random.sample(item, n) 洗牌单列集合:random.s... 阅读全文
posted @ 2019-05-08 20:35 挺锅锅 阅读(114) 评论(0) 推荐(0) 编辑
摘要: ''' 生成单级目录:os.mkdir('dirname') 生成多层目录:os.makedirs('dirname1/.../dirnamen2') 重命名:os.rename("oldname","newname") 工作目录:os.getcwd() 删除单层空目录:os.rmdir('dirname') 移除多层空目录:os.removedirs('dirname1/.../dirnam... 阅读全文
posted @ 2019-05-08 20:34 挺锅锅 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 其中提供了有一个arg属性用于接收从控制台传入的参数,当你要开发一款命令行程序时,该属性非常重要 案例:开发一款命令行界面的文件复制工具 思路:第一个参数是当前执行文件本身,第二个参数用于接收源文件,第三个参数用于接收目标文件 阅读全文
posted @ 2019-05-08 20:33 挺锅锅 阅读(118) 评论(0) 推荐(0) 编辑
摘要: ''' 当前时间:datetime.datetime.now() 昨天:datetime.datetime.now() + datetime.timedelta(days=-1) 修改时间:datatime_obj.replace([...]) 格式化时间戳:datetime.date.fromtimestamp(timestamp) ''' 阅读全文
posted @ 2019-05-08 20:32 挺锅锅 阅读(97) 评论(0) 推荐(0) 编辑
摘要: ''' 判断闰年:calendar.isleap(year) 查看某年某月日历:calendar.month(year, mouth) 查看某年某月起始星期与当月天数:calendar.monthrange(year, mouth) 查看某年某月某日是星期几:calendar.weekday(year, month, day) ''' 阅读全文
posted @ 2019-05-08 20:31 挺锅锅 阅读(107) 评论(0) 推荐(0) 编辑
摘要: ''' 时间戳(timestamp):time.time() 延迟线程的运行:time.sleep(secs) (指定时间戳下的)当前时区时间:time.localtime([secs]) (指定时间戳下的)格林威治时间:time.gmtime([secs]) (指定时间元组下的)格式化时间:time.strftime(fmt[,tupletime]) ''' ''' %y 两位数的年份表示... 阅读全文
posted @ 2019-05-08 20:30 挺锅锅 阅读(107) 评论(0) 推荐(0) 编辑
摘要: # 将序列化文件操作dump与load进行封装 shv_dic = shelve.open("target_file") # 注:writeback允许序列化的可变类型,可以直接修改值 # 序列化:存 shv_dic['key1'] = 'value1' shv_dic['key2'] = 'value2' # 文件这样的释放 shv_dic.close() shv_dic = she... 阅读全文
posted @ 2019-05-08 20:28 挺锅锅 阅读(97) 评论(0) 推荐(0) 编辑
摘要: # 不可逆加密:没有解密的加密方式 md5 # 解密方式:碰撞解密 # 加密的对象:用于传输的数据(字符串类型数据) # 一次加密: # 1.获取加密对象 hashlib.md5() => lock_obj # 2.添加加密数据 lock_obj.update(b'...') ... lock_obj.update(b'...') # 3.获取加密结果 lock.hexdigest() ... 阅读全文
posted @ 2019-05-08 20:27 挺锅锅 阅读(76) 评论(0) 推荐(0) 编辑
摘要: import hmac # hmac.new(arg) # 必须提供一个参数 cipher = hmac.new('加密的数据'.encode('utf-8')) print(cipher.hexdigest()) cipher = hmac.new('前盐'.encode('utf-8')) cipher.update('加密的数据'.encode('utf-8')) print(ciph... 阅读全文
posted @ 2019-05-08 20:27 挺锅锅 阅读(83) 评论(0) 推荐(0) 编辑
摘要: # 基于路径的文件复制: shutil.copyfile('source_file', 'target_file') # 基于流的文件复制: with open('source_file', 'rb') as r, open('target_file', 'wb') as w: shutil.copyfileobj(r, w) # 递归删除目标目录 shutil.rmtree... 阅读全文
posted @ 2019-05-08 20:27 挺锅锅 阅读(93) 评论(0) 推荐(0) 编辑
摘要: # 为什么有很多序列化和反序列化模块 # 因为程序中会出现各种各样的对象,如果要将这些对象持久化存储,必须先序列化 # 只有序列化存储后,必须有对应的反序列化,才能保证存储的数据能被重新读取使用 # 什么是序列化:对象 => 字符串 # 为什么序列化:存 或 传 # 为什么要反序列化:再次使用 # 为什么有很多序列化模块:存与取的算法可以多种多样,且要配套 import pickle obj... 阅读全文
posted @ 2019-05-08 20:26 挺锅锅 阅读(121) 评论(0) 推荐(0) 编辑
摘要: # json语言,就是一种有语法规范的字符串,用来存放数据的,完成各种语言之间的数据交互 # 1.就是{}与[]的组合,{}存放双列信息(类比为字典),[]存放单列信息(类比为列表) # 2.{}的key必须是字符串,且必须用""包裹 # 3.{}与[]中支持的值的类型: dict | list | int | float | bool | null | str # 序列化:将对象转换为字符... 阅读全文
posted @ 2019-05-08 20:24 挺锅锅 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 项目开发周期 阅读全文
posted @ 2019-05-08 20:21 挺锅锅 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 跨文件夹移动文件 阅读全文
posted @ 2019-05-08 20:20 挺锅锅 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 递归删除的思路 递归遍历打印目标路径中所有的txt文件 阅读全文
posted @ 2019-05-08 20:19 挺锅锅 阅读(1012) 评论(0) 推荐(0) 编辑
摘要: 模块的两种被执行方式 包 直接使用包中模块 # 如果只是想作为普通文件夹,py3中可以省略__init__文件,本质上文件夹也是包 # 导入的手段:1.指名道姓到某一个模块 | 2.指名道姓到某一个模块中的名字 包的管理 阅读全文
posted @ 2019-05-08 20:17 挺锅锅 阅读(2485) 评论(0) 推荐(1) 编辑
摘要: 导入模板完成的三件事 起别名 模块的分类 # 大方向:内置(built-in) | 自定义(系统提供 | 第三方提高 | 自己自定义) 模块的加载顺序 # 内存 > 内置 > sys.path (安装环境变量中路径的先后顺序逐一加载) 环境变量 # 环境变量:存放路径的list,第一位默认一定是当前 阅读全文
posted @ 2019-05-08 20:14 挺锅锅 阅读(236) 评论(0) 推荐(0) 编辑
摘要: ASCII码表: 请熟记: 0-9 :48-57 A-Z :65-90 a-z : 97-122 binary 二进制 0b 。。。 octal 八进制 0o 。。。 hex 十六进制 0x 。。。 阅读全文
posted @ 2019-05-08 19:23 挺锅锅 阅读(343) 评论(0) 推荐(0) 编辑