common
'''
加缩进 Ctrl+]
减缩进 Ctrl+[
Alt+3 Alt+4 注释、取消注释代码行
用;分隔一行的多句代码
字符串str编码常用类型:utf-8,gbk,gb2312,cp936,等
在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码
六个标准的数据类型:Numbers(数字),String(字符串),List(列表),Tuple(元组),Dictionary(字典),Set(集合)
其他数据类型:日期,布尔
Numbers(数字):整型(Int),长整型(long integers),浮点型(floating point real values),复数(complex numbers)
列表可以修改,可以根据要求添加元素,元组和字符串则不能修改
*args是可变参数,用于元组, 可变参数就是传入的参数个数是可变的,[0-n]个
如:def foo(x,*args)
foo(1,2,3,4)
foo(1,*(2,3,4))#可直接把一个tuple或list传给可变参数args
**kw是关键字参数,用于字典
如:def graph.nodes.match(label,**properties)
graph.nodes.match("person",name="王某")
graph.nodes.match("person",uid="hqj")
graph.nodes.match("person",**{"name":"王某"})
if __name__ == "__main__":
#这个表示执行的是此代码所在的文件。 如果这个文件是作为模块被其他文件调用,不会执行这里面的代码。 只有执行这个文件时, if 里面的语句才会被执行。 这个功能经常可以用于进行测试。
Python良好的生态,对于加密解密技术都有成熟的第三方库。大名鼎鼎的M2Crypto和Pycrypto
Gcc是C语言的编译器,使用gcc由C语言源代码文件生成可执行文件
通常安装标准的python模块,只需要在模块的根目录下运行:
python setup.py build
python setup.py install
#python setup.py build # 编译
#python setup.py install #安装
#python setup.py sdist #生成压缩包(zip/tar.gz)
#python setup.py bdist_wininst #生成NT平台安装包(.exe)
用逗号分割模块名称就可以同时导入多个模块
from A import b 相当于 import A b=A.b
import A as B,给予A库一个B的别称
python只会在sys.path这个变量,里面的路径中找可能匹配的package和module
一个package跟一个普通文件夹的区别在于,package的文件夹中多了一个__init__.py文件,
__init__.py文件可以是空的,也可以在里面添加一些代码,这些代码会在import这个包的时候运行
作为module的文件类型有".py"、".pyo"、".pyc"、".pyd"、".so"、".dll"
python 命名规范
包名/模块名:小写字母开头,后接单词以_分隔
(包名可以类名相同也可不同)
package_name module_name Module
类名:大写开头,后接单词首字母大写
ClassName
方法名/函数名/普通变量名:则是小写开头,后接单词首字母大写
method_name function_name variable_name
methodName functionName variableName
常量:全部使用大写字母,并且以下划线分隔单词
MAX_OVERFLOW
'''
cmd中运行命令
pip install GitPython
pip install pymysql
#python安装第三方模块
#注意将pip.exe加入到环境变量
os.__file__
#查看method文件路径
import selenium
#导入某包
from selenium.webdriver import chrome
import selenium.webdriver.chrome
#导入某子包
from selenium.webdriver.common import keys
import selenium.webdriver.common.keys
#导入某子包中的某.py文件
from selenium.webdriver.common.keys import Keys
#导入某子包中的某.py文件中类对象
import *
#导入库中所有的类,函数,变量等等信息,这样在调用相关函数或者变量的时候,就不用加Tkinter前缀了
*args
#是非关键字参数,用于元组
**kw
#是关键字参数,用于字典
def 函数名(参数名1,参数名2):
#自定义函数
class People:
def __init__(self, n, a):
self.name=n
self.gender=g
#自定义新类
hqj=people(hqj,gril)
#实例化对象
class C(A, B):
# 继承类 A 和 B
----------------------------' function '-----------
type()
#查看数据类型
id(object)
#返回内存地址,[-5,256]小整数池和字符串id相同
int(x)
#取整
len('hqj')
#字符串长度
raw_input('提示')
raw_input('year:\n'))
#换行
range(1,5,2)
#返回一个整数列表,不包括stop
isinstance(object, class-or-type-or-tuple) -> bool
#返回对象是否是类的实例或子类的实例
ord('A') -> integer
#character string返回integer ordinal
chr(65) -> characterord
#integer ordinal 返回character string
list(reversed(a))
#列表反转
md5_data = '|_|'.join(md5_list)
#将字符串、元组、列表中的元素以指定的字符连接生成一个新的字符串
os.sep
#Linux下os.sep就是‘/’,windows下os.sep就是‘\’
---------------------------------语句-----------------------------------------
for
#循环
while
#循环
while True:
#无线循环,常用语端口监听
if 条件一执行代码 else 非条件执行代码
if 条件一执行代码 elif 条件二执行代码 #中间可插入多个elif
if 条件一执行代码 elif 条件二执行代码 else 非条件执行代码 #中间可插入多个elif
#条件
try:操作 except: 发生异常执行代码 else:没有异常执行这块代码
try:操作 except Exception,e: print " %s" % (remote_file_j,repr(e)) else:没有异常执行这块代码
try:抛出异常 finally:不管有无异常都执行代码
#异常
break语句
#结束当前循环
return s
#终止函数运行,返回值
columns=[]
for row in reader:
column=row[0]
columns.append(column)
等价于
columns = [row[0] for row in reader]#返回list
for a,b in [('a1','b1'),('a2','b2')]: print a,b
for a,b in [['a1','b1'],['a2','b2']]: print a,b
for i in range(len(a)):
if (i != ord('x')) and (k != ord('x')) and (k != ord('z')):
if not isinstance(n, int) or n <= 0 :
if rownum == 'None':
---------------------------------运算符-----------------------------------------
'算数运算符'
%
#取余
https://www.jianshu.com/p/b77d934cc252