Python入门之运算符与基本数据类型详解

Python 的运算符

算数运算符

算数运算符 + - * / // % **

// 用于两个数值相除且向下取整

1
2
3
4
5
In [1]: 5//2
Out[1]: 2

In [2]: 5//3.0
Out[2]: 1.0

** 用于幂运算

1
2
In [3]: 2**3
Out[3]: 8

比较运算符

Python比较运算符 == != > < >= <=,返回值:True/False

Python 比较运算符还支持链式比较,应用起来更加方便

1
2
3
i = 3
print(1 < i < 3) # False
print(1 < i <= 3) # True

关于==的详细的用法见Python中is、in、==之间的区别

赋值运算符

Python赋值运算符 = 、+=、 -=、 \*=、 /=、 //=、 %=、 **=、 :=

1
2
3
4
5
6
# 幂赋值运算符 c **= a 等效于 c = c ** a
#2的5次方
In [5]: a = 2
...: a**=5
...: a
Out[5]: 32

逻辑运算符

Python逻辑运算符 and or not,是指 的意思

1
2
3
4
5
6
7
8
9
10
11
12
13
14
In [6]: True and True
Out[6]: True

In [7]: True and False
Out[7]: False

In [8]: True or False
Out[8]: True
# not优先级最高,使用时一定要注意
In [9]: not True and False
Out[9]: False

In [10]: not (True and False)
Out[10]: True

成员运算符

Python成员运算符 in 、not in

  • 如果元素 i 是 s 的成员,则 i in s 为 True
  • 若不是 s 的成员,则返回 False,也就是i not in s 为 True

关于in 、not in的详细的用法见Python中is、in、==之间的区别

身份运算符

Python身份运算符 is 、is not

is是Python身份运算符,用于判断两个对象的标识符是否相等(python中万物皆对象),实质是用于比较两个对象是否指向同一存储单元

关于is 、is not的详细的用法见Python中is、in、==之间的区别

Python 四大数据类型总结

数值型

int 整型对象、float 双精度浮点型、bool 逻辑对象,它们都是单个元素,称为数据型

前缀加 0x,创建一个十六进制的整数

1
2
In [11]: 0xa5 # 等于十进制的 165
Out[11]: 165

使用 e 创建科学计数法表示的浮点数:

1
2
3
4
5
In [12]: 1.05e3 # 1050.0
Out[12]: 1050.0

In [13]: 1e3 # 1000.0
Out[13]: 1000.0

容器型

可容纳多个元素的容器对象,常用的比如:list 列表对象、 tuple 元组对象、dict 字典对象、set 集合对象

使用一对中括号 [],创建一个 list 型变量

1
lst = [1,3,5] # list 变量

使用一对括号 (),创建一个 tuple 型对象

1
tup = (1,3,5) # tuple 变量

但需要注意,含单个元素的元组后面必须保留一个逗号,才被解释为元组

1
tup = (1,) # 必须保留逗号

否则会被认为元素本身

1
2
3
tup=(1)
print(type(tup))
# <class 'int'>

仅使用一对花括号 {},创建一个 set 对象

1
s = {1,3,5} # 集合变量

字符串

Python 中没有像 C++ 表示的字符类型(char),所有的字符或串都被统一为 str 对象。如单个字符 c 的类型也为 str

str 类型会被经常使用,一些高频用法如下

strip 用于去除字符串前后的空格

1
2
'  I love python  '.strip()
# 'I love python'

replace 用于字符串的替换

1
2
'i love python'.replace(' ','_')
# 'i_love_python'

join 用于合并字符

1
2
'_'.join(['book', 'store','count'])
# 'book_store_count'

find 用于返回匹配字符串的起始位置索引

1
2
'i love python'.find('python')
# 7