数据类型
Numbers(数字) int -有符号整型 / long-长整型 / float-浮点型 / complex-复数String(字符串) List(列表) []Tuple(元组) ()Dictionary(字典) {}数据类型转换
数字:int(x),long(x),float(x),complex(x)
字符串:str(x):x 转换为字符串 repr() :x 转换为表达式字符串
对象:eval(str):用来计算在字符串中的有效Python表达式,并返回一个对象
元组:tuple(s):将序列 s 转换为一个元组
列表:list(s):将序列 s 转换为一个列表
集合:set(s) 转化成可变集合 frozenset(s):转换不可变集合
字典:dict(d) :d 必须为序列(key,value)
chr(x):整数转换为一个字符
unichr(x):整数转换为Unicode字符
ord(x):字符转换为它的整数值
hex(x):整数转换为一个十六进制字符串
oct(x):整数转换为一个八进制字符串
变量赋值
变量名=值 a=1
多变量赋值 a=b=c=2 a, b, c = 1, 2, 'john'
运算符
算术运算符: +:加 -:减 *:乘 /:除 ** :幂 //:取整除
比较元算符:==:等于 !=:不等于 <>:不等于 >:大于 >=:大于等于 <:小于 <=:小于等于
赋值运算符:=:等于 +=: c+=b c=c+b -=:c-=b c=c-b *=:c*=b c=c*b /=:c/=b c=c/b %=:c%=b c=c%b **=:c**=b c=c**b //=: c//=b c=c//b
位运算符:& | ^ ~ << >>
逻辑运算符:and or not
成员运算符:in not in
身份运算符:is isnot
运算符优先级别
运算符描述**指数 (最高优先级)~ + -按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)* / % //乘,除,取模和取整除+ -加法减法>> <<右移,左移运算符&位 'AND'^ |位运算符<= < > >=比较运算符<> == !=等于运算符= %= /= //= -= += *= **=赋值运算符is is not身份运算符in not in成员运算符not or and逻辑运算符
什么是pyc文件pyc是一种二进制文件,是由py文件经过编译后,生成的文件,是一种byte code,py文件变成pyc文件后,加载的速度有所提高,而且pyc是一种跨平台的字节码,是由python的虚拟机来执行的,这个是类似于JAVA或者.NET的虚拟机的概念。pyc的内容,是跟python的版本相关的,不同版本编译后的pyc文件是不同的,2.5编译的pyc文件,2.4版本的python是无法执行的。
为什么需要pyc文件这个需求太明显了,因为py文件是可以直接看到源码的,如果你是开发商业软件的话,不可能把源码也泄漏出去吧?所以就需要编译为pyc后,再发布出去。当然,pyc文件也是可以反编译的,不同版本编译后的pyc文件是不同的,根据python源码中提供的opcode,可以根据pyc文件反编译出py文件源码,网上可以找到一个反编译python2.3版本的pyc文件的工具,不过该工具从python2.4开始就要收费了,如果需要反编译出新版本的pyc文件的话,就需要自己动手了(俺暂时还没这能力^--^),不过你可以自己修改python的源代码中的opcode文件,重新编译python,从而防止不法分子的破解。
转载于:https://www.cnblogs.com/Linc2010/p/8289153.html