Python解释器
当我们编写Python代码时,我们得到的是一个包含Python代码的以.py
为扩展名的文本文件。要运行代码,就需要Python解释器去执行.py
文件。
由于整个Python语言从规范到解释器都是开源的,所以理论上,只要水平够高,任何人都可以编写Python解释器来执行Python代码(当然难度很大)。事实上,确实存在多种Python解释器。
CPython
当我们从Python官方网站下载并安装好Python 2.7后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python
就是启动CPython解释器。
CPython是使用最广的Python解释器。教程的所有代码也都在CPython下执行。
IPython
IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。
CPython用>>>
作为提示符,而IPython用In [
序号
]:
作为提示符。
PyPy
PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。
绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点。
Jython
Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。
IronPython
IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。
小结
Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。
if语句
1 a=1 2 b=2 3 if a<b: 4 print("Yes") 5 print("Yes") 6 print("Yes") 7 print("Yes") #这里是4个空格 相同的缩进表示() 8 else : 9 print("No") 10 11 或者 12 a=1 13 b=2 14 if a>b: 15 print("Yes") 16 elif a==b: 17 print("第三") 18 else: 19 print("any")
结构
if 条件1:
自拍
elif 条件2:
蹦
else: #外层变量,可以被内层代码使用
跳舞 #内层变量,不应被外层代码使用
场景一、用户登陆验证
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
# 提示输入用户名和密码 # 验证用户名和密码 # 如果错误,则输出用户名或密码错误 # 如果成功,则输出 欢迎,XXX! #!/usr/bin/env python # -*- coding: encoding -*- import getpass name = raw_input ( ‘请输入用户名:‘ ) pwd = getpass.getpass( ‘请输入密码:‘ ) if name = = "alex" and pwd = = "cmd" : print ( "欢迎,alex!" ) else : print ( "用户名和密码错误" ) |
场景二 输出三个数字中的最大值/最小值
1 if num1>num2: 2 max_num= num1 3 if max_num > num3: 4 print("Max NUM is",max_num) 5 else: 6 print("Max NUM is",num3) 7 else: 8 max_num = num2 9 if max_num > num3: 10 print("Max NUM is",max_num) 11 else: 12 print("Max NUM is",num3)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
数据运算
比较运算:
赋值运算:
逻辑运算:
成员运算:
身份运算:
位运算:
*按位取反运算规则(按位取反再加1) 详解http://blog.csdn.net/wenxinwukui234/article/details/42119265
运算符优先级:
更多内容:猛击这里
例子:
‘‘abc" +‘qwe‘ #字符串的拼接
True 真 正确的 False 假的 错误的 可以输出True False
num += 1 等价于 num = num + 1
num -= 1 等价于 num = num - 1
num *= 2 等价于 num = num * 2
num /= 2 等价于 num = num / 2
num //= 2 等价于 num = num // 2 整除运算符
num %= 2 等价于 num = num % 2
num **= 2 等价于 num = num ** 2
短路原则:
条件1 and 条件2
条件1 or 条件2
短路原则
对于and 如果前面的第一个条件为假,那么这个and前后两个条件组成的表达式 的计算结果就一定为假,第二个条件就不会被计算
对于or
如果前面的第一个条件为真,那么这个or前后两个条件组成的表达式 的计算结果就一定为真,第二个条件就不会被计算
not 不.雅蠛蝶
not 5>3 == False
not 5<3 == True
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Pass语句
Python pass是空语句,是为了保持程序结构的完整性。
pass 不做任何事情,一般用做占位语句。
Python 语言 pass 语句语法格式如下:
pass
实例:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 输出 Python 的每个字母
for letter in ‘Python‘:
if letter == ‘h‘:
pass
print ‘这是 pass 块‘
print ‘当前字母 :‘, letter
print "Good bye!"
以上实例执行结果:
当前字母 : P 当前字母 : y 当前字母 : t 这是 pass 块 当前字母 : h 当前字母 : o 当前字母 : n Good bye!
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------While循环
While循环
while 条件:
....
else :
...
statement语句
num = 1 while num <= 10: num += 1 if num == 5: break print(num) else: print("This is else statement") while 条件1: ..... while 条件2: ....
1 count = 0 2 while True: 3 print("你是风儿我是沙,缠缠绵绵到天涯...",count) 4 count +=1 5 if count == 100: 6 print("去你妈的风和沙,你们这些脱了裤子是人,穿上裤子是鬼的臭男人..") 7 break 8
while后面加上else语句
Python中的for、while循环都有一个可选的else分支(类似if语句和try语句那样),在循环迭代正常完成之后执行。换句话说,如果我们不是以除正常方式以外的其他任意方式退出循环,那么else分支将被执行。也就是在循环体内没有break语句、没有return语句,或者没有异常出现
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
安利print最后
print() #print(end=‘\\n‘) 什么都不写就代表着这个
print("hello world.",end="__") end="_"这是指定最后一个字符是什么
\\n \\r\\n \\r
linux window mac