python的运行机制
python是用解释器来进行解释运行, 没有可执行程序,一行一行解释,不会先生成可执行程序
Python算是一种 “半编译, 半解释” 型的语言. 一方面, Python解释器会按行读取源代码文件, 然 后会先将源代码转为供Python解释器直接执行的 “字节码”. 然后再执行字节码.
我们执行一个.py文件之后, 会生成一个同名的.pyc文件. 这个.pyc文件就是Python解释器生成的字节码文 件. 如果已经存在了.pyc文件, 那么就不需要再 “翻译” 一次了, 这样也提高了执行效率.
在Linux下执行
!/user/bin/XXX //python的路径
要有执行权限,在执行时候加上执行权限
也可以python 文件.py
coding:utf-8 // 让解释器按照utf-8解释
python中注释为 #
基础语法
在python中在界面上没有类型,在书写上没有类型,但在底层是会有的类型。
在赋值方面多元赋值 ,和c语言中不一样
x,y = 1,2 这里x = 1, y = 2
增量赋值
n = 10*2 和c语言一样
重复赋值
a = 1
a = 0.5
结果为0.5 // 这里是重新赋值,不是类型的转换
不支持 ++/–
a = a + 1 // 可以
a– // 不行
内建函数 type()函数 为查看变量的类型,有类型
复数 类型
例如:a = 10 + 4j //打印出来为(10+4j)
单引号、双引号、三引号
当出现多个引号,为了不用转移引号、就可以用使用不同的包含在内
“ ‘ ’ ” / ( ”’ ” ” ’ ’ ””’)
字符串类型
没有字符类型,一个字符,就是长度为1的字符串
str = “abcd”
可以通过下标访问 str[2]
切片操作
print str[1:3] // 这里的1和3是前闭后开 [1,3)
print str[:3] // 从头开始到3
print str[3:] // 从3到最后
print str[:] // 全部
print str[:-2] // 这个是lenght - n 就是长度向后移动几位
可以直接用 + 来对字符串拼接
用 * 来进行重复字符串
不能用 - /除 对字符串进行操作
内建函数 len()
用于判断有长度的对象,返回对象长度
也可以像printf 一样 用%d等 是字符串本身具有。
但是在格式化输出的时候要在后面加上%
bool
在python中 True和False 首字母大写,True实际上是1,False是0
输入输出
raw_input()函数是输入函数
用法:str = raw_input(“提示”)
print str // 获取的为字符串
强制类型转换为 int(str)
除法
/ 与c语言中一样
// 为地板除法, 向下取整。
精确除法
引入包要在最开始引入
from future import division // 精确除法包
乘方运算
两个* 例如:3**2 3的2次方
比较运算符
== >= != … 返回的是一个bool类型
逻辑运算符 and or not // 与 或 非 短路求值 c/c++也是
4 < 6 and 6 < 8 可以写成 4 < 6 <8
在python中特有的语法
列表list
lsit = [ 1.3, “32”, True, [124,34]]
可以用 下标取值法
下标赋值法
也可以切片 取出来是一个list
元组tuple
tuple = (1,3,5,3)
可以用 下标取值法
也可以切片 取出来是一个list
一旦初始化就不能改变
元组和list中 只有一个不同, 元组不能修改
字典 dict 保存键值对 key-vlaue
dict = {“ni”:”hao”, “he”:”ha”}
取值 是通过key 来取value
print dict[“ni”]
dict[“he”] = “niha”