一,python解释器
Python是一种动态强类型语言
CPython 官方解释器,C语言开发,使用最广泛的解释器
IPython 一个交互式的,功能增强的CPython解释器
PyPy Python语言写的解释器,动态编译Python代码
Jython Python的源代码编译成Java字节码,跑在JVM上
二,基础语法
1,注释
# 井号标注的内容
2,数字
2.1 整数int
- Python3开始不再区分long,int,long被重命名为int.
- 进制表示:
十进制10
十六进制0x10
八进制0o10
二进制0b10
print(0x10)
16
print(0o10)
print(0o10)
8
b
print(0b10)
2
- bool类型:True,False
False本身就是 False
None # nothing
'' #空字符串,两个引号之间什么都没有
0
[] 空列表
() 空元组
{} 空字典
set() 空集合
2.2 浮点数float
- 2.2, -2.2, 3.1415926, 3.34343e6=3.34343*10**9
- 浮点数本质上跟C语言的double类型一样
2.3 复数complex
- 3+ 2j
3,字符串
- 使用'或者"引用起来的字符序列
- r/R前缀:在字符串前面加上 r/R前缀,表示该字符串不做特殊处理
print(r'c:windows\nt') # 加r前缀表示字符串中间的特殊字符也当普通字符处理
c:windows\nt
- f前缀:3.6版本开始新增f前缀,格式化字符串
a = 1
b = 10
f'{a}+{b}={a+b}'
'1+10=11'
3.3 转义字符
- \ 将原本有特殊意义的字符转变成字符本身的意思(\还有一个作用就是续行)
a = "abc"\
"abc"
'abcabc'
- \n 换行符
print('a\nb')
a
b
- \t 制表符/tab
print('a\tb')
a b
- \r 把\r后面的内容移动到行的开始位置
print('dddddddd\rffff')
ffffdddd
4,标识符
- 一个名字,用来指代一个值
a = ? # 标识一个值,实际是指向内存中的一个地址,这个内存地址中保存这个值
- 只能是字母,数字或者下划线
- 只能以字母或者下划线开头,不能用数字开头
- 不能是python的关键字
- Python对大小写是敏感的
- 不允许使用中文,也不推荐使用拼音
- 不要使用有歧义的单词
- 不要随便使用下划线开头的标识符
- 建议全部小写,多个单词使用下划线连接
4.1 常量
一旦定义了,就不能改变标识符的指向,python中无法定义常量
4.2 变量
标识符可以被重新赋值
4.3 字面常量
一个单独的不可变量。利如 100,‘name’
三 ,运算符和内建函数
1,逻辑运算符也是短路运算符(返回的值不一定是bool类型)
与and #只有都为真结果才为真
如果前面的表达式等价为False,则后面的就没有必要再计算了
1 and '2' and 0 = 0 # 这个要计算到最后一步才能得出结果
0 and '2' and 1 = 0 # 这个第一个表达式就是False,所以后面的就不用计算了
或or # 只要有一个为真,结果就为真
如果前面的表达式等价为True,则后面的就没有必要再计算了
0 or Null or 1 =1 # 计算到最后一步才得出结果
1 or Null or 0 =1 # 第一个表达式就为True,后面的就不需要再计算了
非not # 非真为假,非假为真
2,算术运算符
+ 加 #2+3=5
- 减 #5-3=2
* 乘 #2*3=6
/ 除 # 6/3=2
// 向下取整整除 # 5//3=1,1//2=0
% 取模 # 5%3=2
** 幂 2**3=8
3,位运算符
&位与
3 & 4 = 0
|位或
3 | 4 = 7
^异或
<<左移
1 << 2 = 4
>>右移
8 >> = 2
~按位取反,包括符号位
4,比较运算符(比较运算符返回的是bool类型的值)
> (不能用于跨类型比较)
1 > 2 False
1 > 'a' 不支持这种比较
< (不能用于跨类型比较)
1 < 2 True
== (可以用于不同类型数据之间的比较)
1 == 1 True
1 == 3 False
1 == 'a' False
5,赋值运算符(python中赋值即定义)
赋值语句先计算等式右边,然后再把计算出来的值赋值给变量
=
a = 100
+=
a += 10 # a = 110
-+
a -= 30 # a = 80
*=
a *= 2 # a = 160
/=
a /= 4 # a = 40.0
%=
//=
6,成员运算符
主要用来判断是否是容器中的元素,返回布尔值
in
1 in [1,2,'a'] 返回 True
not in
1 not in [1,2,'a'] 返回 False
7,运算符优先级
单目运算符的优先级大于双目运算符
8,常见内建函数
str :把数据类型转换为string类型,python中任何类型的数据都能转换为string类型
int :把数据转换为整数类型,不能跨数据类型转换
float:把数据转换为浮点数类型
bool :布尔型
print: 将多个数据输出到控制台,默认使用空格分割,\n换行
print(value,...,sep='',end='\n')
print(1,2,3) 返回 1 2 3
print(1,2,3,sep=":",end="###") 返回 1:2:3###
isinstance: #是谁的实例吗? 返回bool类型
isinsance(a,str) 返回True
isinstance(False,bool) 返回True
isinstance(False,(str,list,tuple)) 返回False
type type(value) 返回对象的类型,本质是元类
type(int) 返回type
type(11) 返回int