标签:utf-8 不同 orm 速度 使用 执行 判断 相同 one
关于python的编码
python2.x的环境下,默认是ascii编码模式
python3.x的环境下,默认是unicode编码模式
关于python解释器
CPython
python的解释器有许多,但是默认的只有python自带的CPython解释器。CPython也是使用最广泛的python解释器
IPython
IPython是基于CPython之上的一个交互式解释器,也就是说。IPython只是在交互方式上有所增强,但是执行代码方式的功能和CPython是完全一样的。
PyPy
PyPy是另一个python解释器,它的目标是执行速度,PYPY采用JIT技术,对python代码进行动态编译(并非解释),所以可以显著提高python代码的执行速度。
绝大部分的python代码都可以在pypy下运行,但是pypy和cpython有一些是不同的,这就导致相同的python代码在两种解释器下执行可能会有不同的结果。
PS: 如果你的代码要放到pypy下执行,就需要了解pypy和cpython的不同点。
Jython
Jython 是运行在java平台上的python解释器,可以直接把python编译成java字节码执行。
IronPython
IronPython和Jython类似,只不过IronPython是运行在微软。net平台上的python解释器,可以直接把python代码编译成。net的字节码。
python的解释器狠毒,但使用最广泛的还是cpython,如果要和java或。net平台交互,最好的办法不是用jython或IronPython ,而是通过网络调用来交互,确保各程序之间的独立性。
python程序的执行过程:
python先把代码(.py)编译成字节码,就交给字节码虚拟机,然后虚拟机一条一条执行字节码指令,从而完成程序的执行。
什么是字节码?
字节码在python虚拟机程序里对应的是PyCodeObject对象。
.pyc文件是字节码在磁盘上的表现形式。
pyc文件
pycodeobject对象的创建时机是模块加载的时候,即import
python test.py会对test文件进行编译成字节码并解释执行,但是不会生成test.pyc
如果test.py加载了其他模块如import util, python会对util.py进行编译成字节码,生成util.pyc,然后对字节码解释执行。
如果想生成test.pyc,我们可以使用python内置模块py_compile编译。
加载模块时,如果同时存在.py和.pyc,python会尝试使用.pyc,如果.pyc的编译时间早于.py的修改时间,则重新编译.py并更新.pyc
PyCodeObject
python代码的编译结果就是PyCodeObject对象。
day1
for语句
for是一个循环语句,一般用于计数形式的循环。例如要得出1~100之间的数的和就可以用for:
for i in range(100):
sum += i
while语句
while循环结构可以根据表达式的状态来决定循环结构的执行与否,表达式可以为1,也可以是一个表达式。如:
while True: # 永久为真,循环不断。使用break可以跳出该循环。
while a < b: #表达式,根据表达式的结果为真或假决定循环结构是否执行。
if语句
条件判断语句,if一般用于比较运算,如果if的条件表达式求得结果为指定的值或对应的值则执行if语句结构内代码。
if 有多种结构形式:
if: else:
if 表达式: elif 表达式: else:
elif 如果if表达式不成立,则跳到该分支进行下一轮判断,
else 如果其他判断语句不成立,则调到该分支执行对应代码。
python的字符编码:
在3.x环境下,字符默认编码是utf-8.
如果需要转换成其他编码可以使用 encode() 和 decode()
encode() 是字符编码函数, 需要指定要编成什么编码
decode() 是字符解码函数,需要指定原来是什么编码
例如:
temp = "李杰"
temp_gbk = temp.encode(‘gbk‘)
print(temp_gbk)
作业:2周内完成
1 总结知识点到博客
2 完成计算器功能
3 完成函数递归,阅读socketserver源码,并完成它
python运算符
+ 加法操作
- 减法操作
/ 除法操作
* 乘法操作
** 次幂操作
// 地板除,返回商数部分
and 与运算
or 或运算
not 非运算
in 成员运算,例如 a = [1,2,3,4,"hello"] if "hello" in a:
not in 成员运算,in的反向操作
python的基本类型:
数值类型int
字符类型str
布尔类型bool
特殊类型None ,none 并非为空,而是一个特殊的类型。指代无的意思
占位符在字符串中的应用:
s = "hello {0},your age is {1}"
这样字符串中的{}花括号就起到了占位符的作用,可以用format函数格式化数据进去。
s = s.format("alex",19)
>>>s
hello alex,your age is 19
python全栈之路 1 python的基本介绍
标签:utf-8 不同 orm 速度 使用 执行 判断 相同 one
原文地址:http://www.cnblogs.com/zxcv-/p/6784193.html