Python 学习笔记

安装 pylint 的时候

我安装完 pylint,但是 vscode 还是显示未安装。原因是默认路径不对。

终端中输入which pylint

然后修改设置中pylint的path为返回的路径

函数

函数参数传递

1. fun(arg1, arg2)
2. fun(arg1, arg2='a')   设置默认参数
3. fun(*arg1)    可传入多个参数不管有多少个在函数内部都被存放在以形参名为标识符的tuple中如果要传入list和tuple则可以写fun(*list),这样就可以讲list的值依次传入fun函数中
4. fun(**arg2)   参数在函数内部将被存放在以形式名为标识符的dictionary中,传入的参数必须采用key1=value1,key2=value2这样的格式

参数定义的顺序必须是:必选参数、默认参数、可变参数、命名关键字参数和关键字参数。

Class

__slots__定义的属性仅对当前类实例有用,对继承的子类是不起作用的。

进程

fork

在 Unix/Linux 中可以使用 fork()来创建进程,window 下不能。

import os;
// 子进程永远返回0而父进程返回子进程的ID
pid = os.fork()

if pid == 0:
    print('I am child')
else:
    print('I am parent')

multiprocessing

multiprocessing 模块是 python 下跨平台的多进程模块。

from multiprocessing import Process

// 传入一个执行函数和函数的参数
p = Process(target=fun, args=('test',)
p.start()
p.join()

线程

import threading

// 传入一个执行函数和线程的名称
t = threading.Thread(target=fun, name='name')
t.start()
t.join()

json

json.load用来加载json数据,此时返回的数据可以通过json[‘key’]来获取内部属性。

json.dumps用来处理json数据,然后返回字符串,我们不能通过返回的字符串再来获取json的内部属性了。

loadJson1 = json.loads(json)     // right
loadJson2 = json.loads(json['key'])     // wrong

dumpJson1 = json.dumps(loadJson1)  // right
dumpJson2 = json.dumps(loadJson1['key'])   // right

json = dumpJson1['key']   // wrong
blog comments powered by Disqus
目 录