一、python的起源
作者:Guido van Rossum(龟叔)
设计原则:优雅,简单,明确
二、解释型语言VS编译型语言
1、解释型语言:C#、python
step1:程序员写代码;
step2:解释过程:逐行,从上至下的解释,边解释边执行。
综上:每次执行,自上而下,边解释边执行。
2、编译型语言:C、C++
step1:程序员写代码
step2:编译过程:将代码编译成文件;
step3:计算机直接执行编译好的文件就可以了。
综上: 编译一次,每次执行编译后的文件
(java: 先编译后解释型的语言;编译后的文件需要解释执行)
三、运行python的方式
1. 交互式
前提: 设置python的环境变量
输入python进入交互模式
输入exit()退出交互模式
优点: 输入代码,直接能看到执行结果
缺点: 没法保存,没有提示
2. 通过python命令执行python文件
step1: 得有一个需要执行的.py文件
step2: 执行命令 python 文件的路径(C:UsersThinkPadDesktopday01.py)
3. 通过IDE集成的开发环境(Integrated Development Environmnet)
pycharm, IDLE
集合了许多常用的工具:
代码提示;
控制台输出;
断点,调试;
图形界面;
......
四、 注释:
* 注释不会被执行,解释说明程序,增强代码的可读性;
1 # 单行注释
2 ''' 多行注释 '''
3 """ 多行注释 """
五、数据类型
1、number 数值类型
int 整形
float 浮点型 (小数)
bool 布尔型 True/False
complex 复数型
2、str(string字符串类型)
声明:'', "", """s""", '''s'''
定义:0-n个字符组成的有序序列
3、混合数字类型的自动升级:数值类型进行计算的时候,会先将数据升级成较复杂的类型再进行计算
bool < int < float < complex
1 # 强制转换成bool
2 print(bool(3.14)) # True
3 print(bool(0)) # False
4 print(bool(-3)) # True
4、数字类型的强制转换
int(5.9) ---> 5
5、其他进制数 ——> 十进制数
int(参数1, 参数2)
参数1: '字符串类型', 数值
参数2: 数值进制类型, 2, 8, 16
0b10 : 二进制数 0b23[错误,因为二进制数只有0和1]
0o10 : 八进制数 0o89[错误,八进制不能出现>=8的数]
0x10 : 十六进制数 0xA, 0xa 他俩一样都表示10
6、十进制数 ---> 其他进制数
bin(十进制数) --> 二进制
oct(十进制数) --> 八进制
hex(十进制数) --> 十六进制
六、变量VS常量VS标识符
1、变量
变量和数学中的变量一样,只不过python中的变量可以表示任意的数据类型
变量的本质实际上是一小块内存,在程序执行的过程中,变脸的值和类型都可以发生改变
2、常量
不会发生改变的量
python中没有规定的机制用来表示常量,约定俗成的用纯大写字符组成的变量名表示常量,如P
3、标识符
变量名,函数名
命名规则
(1) 由数字,字母,下划线组成
(2)数字不能开头
(3)不能和关键字重名
(4)可以和python内置函数重名,重名后,该函数不能调用,不建议这样做
* 见名知意; 多个英文单词之间用_连接; 不要用拼音
七、表达式和运算符
1、表达式: 由操作数和运算符组成;比如4+3z
2、运算符
(1)赋值运算符: = 将等号右边的赋值给等号左边的
(2)算数运算符: +, -, *, /, //, %, **
(3)复合赋值运算符: +=, -=, *=, /=, //=, %=, **=
a += 3 --> a = a + 3
(4)关系运算符: ==, !=, >, <, >=, <=
(5)逻辑运算符: and 和
or 或者
not 不是,否定, 非
八、方法
1、print() 打印输出
2、type() 获取变量的类型
3、input() 输入,从控制台向程序中输入,获取输入内容
1、阻塞式; 阻塞当前程序的运行
2、 程序中获取到的输入内容为字符串类型
4、chr(参数)
参数: code,编码
功能: 将编码转换成对应的字符; utf-8编码;
chr(65) ——> A
chr(97) ——> a
5、ord(参数)
参数: 字符
功能: 将字符转换成对应的编码; utf-8编码;
ord('B') ——> 66
ord('c') ——> 99
6、eval(参数)
参数: 字符串表达式; '3+4a'
功能: 能够执行一个字符串表达式
eval("10/2") ——> 5.0