摘要: We will support it soon! Click 2k/4k to download videos first. Pro Subscription will automatically renew every month before you unsubscribe. Monthly $ 阅读全文
posted @ 2023-06-13 21:23 石天放 阅读(24) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2022-10-26 19:06 石天放 阅读(16) 评论(0) 推荐(0) 编辑
摘要: #Sqlalchemy底层,表结构应该在metadata.create_all()之前创建完成,写入类中 #Flask_Sqlalchemy中,表结构应该在Sqlalchemy.__init__()之前创建完成 #Sqlalchemy.__init__内创建Session的时候内部会调用metada 阅读全文
posted @ 2021-11-01 21:48 石天放 阅读(103) 评论(0) 推荐(0) 编辑
摘要: strings 包中的函数和方法// strings.go // Count 计算字符串 sep 在 s 中的非重叠个数// 如果 sep 为空字符串,则返回 s 中的字符(非字节)个数 + 1// 使用 Rabin-Karp 算法实现 func Count(s, sep string) int f 阅读全文
posted @ 2021-08-17 17:53 石天放 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 一,考虑使用模块级别的代码区分生产环境和调试环境 二,通过repr字符串来输出调试信息 1,repr函数会根据对象返回可供打印的表示形式 2,想要调整对象的可打印状态,可以设置 属性,直接打印对象即可,或者通过 属性,先调用 再打印,也可以打印对象的属性 三,使用unittest测试全部代码 1,u 阅读全文
posted @ 2020-04-02 16:29 石天放 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 一,文档字符串 1, 在函数,类,模块(顶端编写)下使用三个"""括起来内容即可 2, 文档被关联到__doc__属性中,应尽量充分的描述其用法,作用,异常等等 二,使用包来组织模块,提供稳固API 1, 模块的__all__属性是一个列表,其中的每个值都能作为本模块的公共API,外部以 的形式引入 阅读全文
posted @ 2020-04-02 16:08 石天放 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 一,使用subprocess模块管理子进程,并控制输入流和输出流 1,Popen构造器启动进程,communicate方法读取子进程输出信息 2,子进程会独立于父进程而运行,这里父进程指的是Python解释器 3,可以给communicate方法传入timeout参数,避免进程死锁或者失去响应,一段 阅读全文
posted @ 2020-04-01 12:34 石天放 阅读(313) 评论(0) 推荐(0) 编辑
摘要: 安装 pip3 install pipreqs 使用 # 1.在项目根目录下执行命令 pipreqs ./ # 报错就执行下面这条 pipreqs ./ --encoding=utf-8 #2.可以看到生成了requirements.txt文件 #3.执行下面代码就会把项目用到的所有组件装上 pip 阅读全文
posted @ 2020-03-29 17:22 石天放 阅读(450) 评论(0) 推荐(0) 编辑
摘要: 1,考虑使用contextlib和with语句改写可复用的try/finally代码 1. 相当于 ,`finally:lock.release`,使用with可以避免繁琐的语句 2. 开发者可以使用内置的contextlib模块的contextmanager修饰器来处理自己编写的对象和函数以支持w 阅读全文
posted @ 2020-03-28 20:44 石天放 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 1,使用纯属性代替get和set方法 1. 使用@property 2,考虑使用@property重构属性,即扩充功能或修补功能,但若太频繁使用应该考虑彻底重构 3,可以定义一个描述符类,去改写需要复用的property方法 4,当实例引用计数无法降为0的时候,垃圾回收期将不会回收它。可以通过pyt 阅读全文
posted @ 2020-03-27 15:12 石天放 阅读(222) 评论(0) 推荐(0) 编辑