编译型:一次性将所有的代码编译成二进制文件。python
c,c++c++
优势:运行效率高oop
缺点:开发速度慢,不能跨平台编码
解释型:当程序运行时,从上至下一行一行的解释成二进制。spa
优势:开发速度快,效率高,能够跨平台3d
缺点:运行效率低code
python2x 和 python3x 宏观上的区别:blog
python2x源码,重复率高,不规范,并且python崇尚的是简单,优美,清晰因此建立了python3,使其规范化utf-8
python2里不支持中文编码,若是想要中文编码的话,就必须再python2x首行写上:#-*-encoding:utf-8-*-解决python2中文报错的问题开发
变量:由数字,字母,下划线任意组合,且不能以数字开头
必需要有可描述性
变量名不能是,python中的关键字
不能用中文,不能用拼音
常量:约定俗成 不可更改,常量名所有用大写字母定义
注释:
单行注释:#
多行注释:''' ''' """ """ 三个单引号,或者三个双引号
用户交互input:
数据类型所有是str
基础数据类型:bool True False
int + - * / // **
str:加引号的都是str字符串,字符串能够相加,能够和数字相乘
if 条件:
结果
if 条件:
结果
else:
结果
if 条件:
结果
elif 条件:
结果
elif 条件:
结果
else:
结果
if 条件:
if 条件:
结果
else:
结果
else:
结果
1 while 条件: 2 结果 3 4 # 结束循环只有两种方法 5 1:改变条件,条件不再知足 6 2:break 7 continue,结束本次循环,进行下次循环
在while循环内,若是不适用break结束循环,也能够使用pass跳过本次操做,继续下次操做
格式化字符 | 含义 | |
%s |
字符串 | |
%d | 有符号的十进制整数,%06d表示输出的整数显示位数,不足的地方使用0代替 | |
%f |
|
|
%% | 百分之 |
while else
count = 0 while count <= 5 : count += 1 if count == 3:break print("Loop",count) else: print("循环正常执行完啦") print("-----out of while loop ------")
# 当循环被break打断,就不会执行else的结果
在储存中存储的东西的实质就是二进制
美国:ASCII码
八位表示一个bit = 1字节,最左边的一位都是0,由于是为了ASCII码后续的发展预留的一位,后面七位,已经足够表示了
八位bit = 表示一个字节(byte)
1024(byte)个字节 = 1KB
1024kB = 1MB
1024MB = 1GB
1024GB = 1TB
ASCII码只支持美国的英文字母,其余的都不能够用,美国为了解决编码问题,创立了万国码,unnicode
万国码
一个字节就能够包括全部的英文,特殊字符,数字
中文用四个字节去表示
后来以为过于浪费因此对unnicode进行了升级,变成了utf-8
在utf-8里中文是用3个字节去表示的
gbk(仅限于国内使用):一个中文用2个字节去表示
优先级
() > not > and > or,同一优先级,从左至右依次计算
运算符的比较
# 1,3>4 or 4<3 and 1==1 False # 2,1 < 2 and 3 < 4 or 1>2 True # 3,2 > 1 and 3 < 4 or 4 > 5 and 2 < 1 True # 4,1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8 False # 5,1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6 False # 6,not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6 False # print(1,3>4 or 4<3 and 1==1) # print(2,1 < 2 and 3 < 4 or 1>2) # print(3,2 > 1 and 3 < 4 or 4 > 5 and 2 < 1) # print(4,1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8) # print(5,1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6) # print(6,not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)
数字转换布尔值
1:非0转换成布尔值是True,非零转换成布尔值是False
数字进行比较
print(1 or 2) 1
print(3 or 2) 3
print(0 or 2) 2
print(0 or 100) 100
x or y 当x等于True时输出x
and是相反的
例如
print(1 and 2) 2
print(3 and 2) 2
print(0 and 2) 0