分类 python 中的文章

08 Python Virtual Environment

Details refer to offical document Virtual environment To create new virtual environment usually in folder venv python -m venv yourfoldername enter virtual environment source venv/bin/activate exit virtual environment deactivate Pip usage install package pip install packagename list installed packages pip list save installed packages to requirements.txt pip freeze > requirements.txt install packages from requirements.txt pip install -r requirements.txt ……

阅读全文

07 Python 函数

函数 #!/usr/bin/env python3 # -*- coding: utf-8 -*- # def func, snake case # return value # no args, no return def add_two_number(): print('a') # 1 arg def add_two_number_1(x): return x + 5 # return value # return multiple value def two_number_2(x, y): c = x + y d = x - y return c, d # args def add_number(x, y, *args): print(f'x = {x}') print(f'y = {y}') print(f'args = {args} ') # kwargs # def add_number_1(x, y, *args, **kwargs): print(f'x = {x}') print(f'y = {y}') # f-string f'this is string, {x}' print(f'args = {args} ') print(f'kwargs = {kwargs} ') # wrong # def add_number_2(**kwargs, *args, x, y) # pass # default def add_number_3(x, y, c=10, d = True): print(c) if __name__ == '__main__': # add_two_number() # print(add_two_number_1(6)) # print(two_number_2(10, 5)) # add_number(1,2, 3, 4, 5, 6) # add_number_1(1,2,3,4,5,……

阅读全文

06 Python 控制,循环

条件控制 #!/usr/bin/env python3 # -*- coding: utf-8 -*- if __name__ == '__main__': a = 5 if a > 0: print('a > 0') else: print('a < 0') if a > 0: pass elif a < 5: pass elif a < 10: pass else: pass if a > 0: if a < 5: print(a) else: print('a > 5') 循环控制 #!/usr/bin/env python3 # -*- coding: utf-8 -*- if __name__ == '__main__': # while condition a = 5 while a > 0: # print(a) a = a -1 # for in for i in range(10): print(i) # break the loop print('------------------') for i in range(10): print(i) else: # print('done') # continue the loop print('------------------') for i in range(10): if i == 5: continue print(i) count = 0 while count < 5: print (count, " 小于 5") count……

阅读全文

转换Pdf成图片

背景 在做文字检测和文字识别的时候,有时候客户提供的是pdf格式的文件,而不是jpg/png格式,这时候就需要把pdf里面多个页面 保存成图片。 代码库pdf2image 实现 Python 参考readme docker 参考readme golang 参考readme 也可以 直接下载可执行文件直接执行 -> https://github.com/jerrywang1981/pdf2images/blob/master/pdf2image……

阅读全文

Golang 中通过gRPC调用Python实现的功能

背景 有时候,我们在python中实现了一个功能,这功能如果用golang重新写呢,会比较麻烦,如果要在golang中调用python中的功能。 方式有很多,主要就是两个程序如果沟通的问题,那方式就各种各样了,可以通过http协议,json/xml等格式,或者tcp, 当然还有个 选择就……

阅读全文

Class Object Method

对象中通过类或者实例的方法调用方式的不同 如果通过类中取得的方法,需要传入实例 class A(object): def test(self, *args): print(*args) if __name__ == '__main__': a = A() a.test(7, 8, 9) # method from class object m1 = A.test m1(a, 7, 8, 9, 10) # method from instance object m2 = a.test m2(7, 8, 9, 10) 也就是说, 实例方法的第一个参数是实例本身,如果写decorator的时候,要特别注意 比如print_args这个decor……

阅读全文

05 Python Dictionary

Dictionary ###创建方式 a = dict() a = {} a = {'a': 1, 'b': 2} a = dict(a=1,b=2) a = [('a', 1), ('b', 2)] b = dict(a) a = zip('abc', [1,2,3]) a = { x:x*2 for x in range(10) } a = dict.fromkeys(range(3), 'y')……

阅读全文

04 Python Tuple

Tuple Python 的元组与列表类似,不同之处在于元组的元素不能修改。 不可变 空元组, 一个元素元组 元组运算 元组在参数中的应用 创建tuple的方式……

阅读全文

03 Python List

列表 序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推 索引访问 长度 空或者False 创建列表的方式 a = [] a = [1,2,3] a = list() a = list('abcdefg') a = list(range(10)) a = [ x for x in range(20) ] append In [17]: a=[1,2,3] In [18]: a.append(4) In [19]: a Out[19]: [1, 2, 3, 4] In [20]: extend In [21]: a Out[21]: [1, 2, 3, 4] In [22]: a.extend([5,6])……

阅读全文

02 Python Variable

变量 命名 变量名必须是大小写英文、数字和_的组合,且不能用数字开头 允许的变量名:a, a1, B_5, ____5, _C 静态语言,动态语言 大小写敏感 Dunder 规范 snake_case e.g. a_b, total_count 变量 函数名 模块 包 CamelCase e.g. Person, TeamMember 类名 常量 一般用大写, PI=3.14……

阅读全文