文章目录
Python 基础
if else(叫什么用法忘记了…)
注意:在使用如下语句时,后面不应该再添加a=-2,会报错。
a=1
a=2 if a>0 else -2
dict 排序
排序的三种方法
方法一参考自Python中字典根据多项规则排序
d = {'a':1,'b':4,'c':2}
#方法1
#按value值排序
sorted(d.items(),key = lambda x:x[1],reverse = True)
#先按value值排序,再按照key值排序
sorted(d.items(),key = lambda x:(x[1],x[0]),reverse = True)
#先按value升序,再按key降序
sorted(d.items(),key = lambda x:(x[1],-ord(x[0])),reverse = True)
#方法2
import operator
sorted(d.items(),key = operator.itemgetter(1))
#方法3
f = zip(d.values(),d.keys())
sorted(f)
dict 操作
dict删除元素时会报错误dictionary changed size during iteration
a={'a':1, 'b':0, 'c':1, 'd':0}
for key in a.keys():
del a[key]
#采用如下方式
for key in list(a.keys()):
del a[key]
range和linspace和np.random.uniform()
range(start,end,scan)
scan每次跳跃的距离,默认为1,注意:只接受int类型,常见的报错’float’ object cannot be interpreted as an integer.
linspace(start,end,num)
,num指要生成的个数。
np.random.uniform(start,end,num)
,随机生成,这里num的含义与linspace相同。
jupyter常用的magic
%matplotlib inline
在jupyter打印图片
%load
将本地py文件代码导入进来,例如%load test.py
%run
运行本地代码,利用这个magic,我们可以把一些头文件、基本设置、共同函数写在不同的notebook内,用的时候运行一下就可以了。
例如,我们将公共的函数写在conmmon_import.ipynb中,一些导入函数的配置文件在utils.ipynb中,需要的时候使用%run直接运行一下就可以把公共函数和环境配置好了。
参考Jupyter notebook使用指南
format
format有两种用法,一种通过位置,一种通过字典。
a = 1
b = 2
print('{0}\n{1}'.format(a,b))#\n换行
1
2
print('{A}{B}'.format(A=a,B=b))
12
sort和sorted
sorted会重新生成一个排序的结果,而sort直接在源对象上操作。如下图例子,是在按列排序。
a = np.array([[1,4],[2,3],[3,2],[4,1]])
a.sort(1)#按列排序
output:
array([[1, 4],
[2, 3],
[2, 3],
[1, 4]])
a.sort(0)#按行排序
output:
array([[1, 1],
[2, 2],
[3, 3],
[4, 4]])
未完待续…