python备忘

来源:互联网 发布:淘宝店铺装修2017模板 编辑:程序博客网 时间:2024/06/05 02:48

元组不能修改,列表可以修改,因为字典的键不能修改,所以只能用元组

将一个数扩展成列表

>>> [1]*5
[1, 1, 1, 1, 1]

对列表排序,sort原地排序,sorted在副本排序

>>> x=[3,4,6,1,9,8,0]
>>> x.sort()
>>> x
[0, 1, 3, 4, 6, 8, 9]
>>> sorted(x)
[0, 1, 3, 4, 6, 8, 9]

为元组与列表的转化函数

>>> l=[1,2,3]
>>> tuple(l)
(1, 2, 3)
>>> list(tuple(l))
[1, 2, 3]
>>> list((1,2,3))

列表每个元素乘以2

>>> l=[1,2,3]
>>> [i*2 for i in l]
[2, 4, 6]


打印所有可以使用的全局变量,方法,模块等

>>> globals()
{'f': <function f at 0x02A8AE30>, '__builtins__': <module '__builtin__' (built-in)>, 'fsolve': <function fsolve at 0x02F29BB0>, 'curve': <function <lambda> at 0x0393EAF0>, 'solution': array([-1.26556444]), '__package__': None, 'np': <module 'numpy' from 'C:\Python27\lib\site-packages\numpy\__init__.pyc'>, '__name__': '__main__', '__doc__': None}

获取列表长度

len(list)

脚本添加中文注释执行不了

脚本首行添加#coding:utf-8

利用numpy模块检索满足条件元素下标的方法

一维

>>> import numpy as np
>>> list=[2,9,4,5,8,3]
>>> arr=np.array(list)
>>> np.where(arr>5)
(array([1, 4], dtype=int64),)
>>> arr>5
array([False,  True, False, False,  True, False], dtype=bool)
>>> arr[np.where(arr>5)]
array([9, 8])

二维

>>> m=np.array([[1,2,3],[4,5,6],[7,8,9]])
>>> m%2==1
array([[ True, False,  True],
       [False,  True, False],
       [ True, False,  True]], dtype=bool)

>>> np.where(m%2==1)
(array([0, 0, 1, 2, 2], dtype=int64), array([0, 2, 1, 0, 2], dtype=int64))

>>> m[np.where(m%2==1)]
array([1, 3, 5, 7, 9])

这里引申出一个获取二维数组元素的新方法,其获取格式为:m[下标元组,下标元组]

另一个普通方法是m[下标][下标]

>>> m[(np.array([0,1]),np.array([0,1]))]
array([1, 5])

如何将行向量变为列向量

>>> arr=np.array([1,2,3,4])
>>> arr.reshape(4,1)
array([[1],
       [2],
       [3],
       [4]])

如何实现矩阵的转置

>>> m=np.array([[1,2],[3,4]])
>>> m.T
array([[1, 3],
       [2, 4]])

window下安装模块(首先有安装pip),并查看已安装了哪些包

C:\Users\jiaxi>pip install pydot
Collecting pydot
  Downloading pydot-1.2.2.tar.gz
Requirement already satisfied (use --upgrade to upgrade): pyparsing>=2.1.4 in c:\anaconda2\lib\site-packages (from pydot)
Building wheels for collected packages: pydot
  Running setup.py bdist_wheel for pydot ... done
  Stored in directory: C:\Users\jiaxi\AppData\Local\pip\Cache\wheels\59\31\1e\44e7c5c8f5f9bfdf518752a375dabb0dd06f316e373edb19ed
Successfully built pydot
Installing collected packages: pydot
Successfully installed pydot-1.2.2

C:\Users\jiaxi>pip freeze
alabaster==0.7.8
anaconda-client==1.4.0
anaconda-navigator==1.2.1
argcomplete==1.0.0
astropy==1.2.1
Babel==2.3.3
backports-abc==0.4
backports.shutil-get-terminal-size==1.0.0
backports.ssl-match-hostname==3.4.0.2
beautifulsoup4==4.4.1


一次安装经历

安装Anaconda2,发现没有安装pydot,使用pip命令安装,运行程序发现找到dot.exe,于是安装graphviz,并添加从可执行程序的路径到环境变量

0 0
原创粉丝点击