Python运算符、表达式、数据类型及常用关键字

运算符

算术运算符

运算符 功能说明 示例
** 幂运算符,用于计算左操作数的右操作数次幂 2 ** 3 = 8
% 模运算符,商数取余 5 % 2 = 1
// 整除运算符,商数取整 5 // 2 = 2
/ 除法运算 5 / 2 = 2.5
* 乘法运算 5 * 2 = 10
- 减法运算 5 - 2 = 3
+ 加法运算 5 + 2 = 7

比较运算符

运算符 功能说明 示例
> 大于 5 > 2 返回结果为:True
< 小于 5 < 2 返回结果为:False
>= 大于等于 5 >= 2 返回结果为:False
<= 小于等于 5 <= 2 返回结果为:True
== 等于 5 == 2 返回结果为:False
!= 不等于 5 != 2 返回结果为:True

赋值运算符

运算符 功能说明 示例
**= 幂=运算符 a **= 3 等价于 a = a ** 3
%= 模=运算符 a %= 3 等价于 a = a % 3
//= 整除=运算符 a //= 3 等价于 a = a // 3
/= 除=运算符 a /= 3 等价于 a = a / 3
*= 乘=运算符 a *= 3 等价于 a = a * 3
-= 减=运算符 a -= 3 等价于 a = a - 3
+= 加=运算 符 a += 3 等价于 a = a + 3

成员运算符

运算符 功能说明 示例
in 成员运算符,检查左操作数是否在右操作数中 10 in [10,20,30] 返回结果为:True
not in 非成员运算符,检查左操作数是否不在右操作数中 40 in [10,20,30] 返回结果为:True

布尔运算符

运算符 功能说明 示例
and 逻辑与,所有项为True则为True 5 > 2 and 5 > 7 返回结果为:False
or 逻辑或,其中一项为True则为True True or False 返回结果为:True
not 只作用于一个布尔值,值为其相反的布尔值 not False 返回结果为:True

表达式

表达式是由运算符和操作数组成的。操作数可以是固定值、常量、变量、函数等。运算符可以是加法、减法、乘法、除法、幂等。
常用Python表达式如下:

表达式 示例 功能说明
算术表达式 3 + 4 表示3和4相加结果 7
字符串表达式 “hello:” + “boy” 用于将两个字符串连接起来,结果为 hello:boy
布尔表达式 3 == 4 判断3和4是否相等,结果为 False
逻辑表达式 3 > 2 and 3 > 4 将多个布尔表达式组合起来进行逻辑运算,结果为False
身份测试表达式 a is b 检查引用是否指向同一个对象,示例为比较a和b的引用,若指向同一对象结果为True,否则为False

Python数据类型

数据类型是指一类值,每个值都属于一种数据类型,觉的数据类型有以下几种:
字符

字符型:str

  • 字符串连接用符号 +

>>>'abc' + 'def'
'abcdef'
  • 字符串复制用符号 *
>>>'abc' * 5
'abcabcabcabcabc'
  • 字符串也可以看作是单个文本的列表,对列表的许多操作也可用作字符串,如:下标取值、切片取值、for循环、in和not in等。
  • 字符串与列表不同的是,字符串是不可变数据类型,而列表是可变数据类型。
  • 字符串可用单引号或双引号开始和结束。
  • 字符串转义符:
    \t 制表符
    \n 换行符
    \ 反斜杠
  • 原始字符串:就是声明字符串什么就是什么,如转义符也当成是字符串的字符,在字符串开始的引号之前加上‘r’表示该字符串为原始字符串
>>>print(r'this is color\'s cat.')
this is color\'s cat.
  • 三重引号表示多行字符串,多行字符串的起止是3个单引号或3个双引号,三重引号之间的制表符、换行符、引号等,都被认为是字符串的一部份,Python的缩进规则不适用于多行字符串。
  • 注释:单行注释用‘#’号,多行注释用三重引号,即多行字符串也可用作多行注释。
  • in和not in操作
# 以下表达式检查左边的字符串是否在右边的字符串中(精确匹配,区分大小写)
>>>'' in 'strr'
True
>>>'cat' not in 'aaa,cat'
False

整型:int

Python3中已经不分int和long了,只有int型,用type()函数可以查看变量的数据类型。

  • 整型的表示形式和转换
表示形式 说明 转换
二进制 以“0B”或“0b”开头(比如0b101) bin():十进制转换为二进制
八进制 以 “0o”或“0O”开头(比如0o510) oct():十进制转换为八进制
十进制 比如10、20、30 int() :接收一个符合整型规范的字符串转换为整型
十六进制 以“0x”或“0X”开头(比如0xA7A) hex():十进制转换为十六进制
  • 在Python中当多个变量的值一样时,该值并没有被保留多次,而是这多个变量指向同一个内存,例如:
>>>a = 10
>>>b = 10
>>>c = a
>>>print(id(a), id(b), id(c))
140717869359912 140717869359912 140717869359912

id()可以取出变量的内存地址,从以上结果可以看出3个值一样的变量指向同一地址,那么如果修改了变量a的值,a变量的内存地址和其他变量的内存地址会有什么变化呢,示例如下:

>>>a = 10
>>>b = 10
>>>c = a
>>>print(id(a), id(b), id(c))
140717869359912 140717869359912 140717869359912
>>>a = 20
>>>print(id(a), id(b), id(c))
140717869359944 140717869359912 140717869359912

从以上结果看出变量a的地址变了,b、c的地址没变,因为Python数值型是不可变对象,当改变他的值时,不是修改内存中变量的值,而是把新值放入内存然后修改变量,使得变量指向新值的内存地址。

浮点型:float

  • 浮点型以十进制表示,由整数和小数组成(可以是0)
  • 浮点型可用科学计数法表示,主要针对很大或很小的浮点数
  • 浮点型是双精度的,每个浮点型占据8个字节(64位)

NoneType

  • 数据类型的唯一值是:None

布尔型

  • True 和 False(首字母大写)

列表:list []

  • 可变数据类型,用下标获取值,下标从0开始,也可从-1开始(-1表示倒数第1个列表值,-2表示倒数第2个列表值),列表值也可以包含列表,用多重下标进行访问。
  • 用切片取值,用两个整数,第1个整数为切片开始时的下标,第2个整数为切片结束时的下标,切片向上递增至第2个整数,但不包括他:
>>> strList = ['a', 'b', 'c', 'd']
>>> strList[1:3]
['b', 'c']
>>> strList[:2]
['a', 'b']
>>> strList[2:]
['d']
  • 可用下标改变列表的值:strList[2] = ‘222’
  • 列表连接和复制:与字符串一样也是用符号 ‘+’ 和 ‘*’
  • 可用del语句从列表中删除值:del strList[2]

元组:tuple ()

除以下两点外,元组数据类型与列表数据类型一样:

  1. 元组用()表示,列表用[]表示
  2. 元组是不可变数据类型,列表是可变数据类型

字典:dict {key:value, key:value}

  • 字典中的键值项是不分排序的,键值对输入的顺序并不重要,可用in 或 not in 检查某个键或值是否存在于字典中:
>>> spam = {'color':'red','age':'38'}
>>> 'color' in spma 等价于 'color' in spam.keys()
>>> 'red' in spam.values()

Python关键字

True False None and or
in not is import class
def global as if elif
else for while pass break
return continue from try except
raise with assert async await
del finally lambda nonlocal yield

Python内置函数

type() id() int() hex() bin()
oct() input() print() str() float()
list() tuple() dict() bytes() abs()
all() any() ascii() bin() bool()
breakpoint() bytearray() callable() chr() classmethod()
compile() complex() delattr() dir() divmod()
eval() exec() filter() format() frozenset()
getattr() hasattr() hash() help() isinstance()
issubclass() iter() len() locals() map()
max() min() memoryview() next() object()
oct() open() ord() pow() property()
range() repr() reversed() round() set()
setattr() slice() sorted() staticmethod() sum()
super() vars() zip() _import_()

相关推荐

  1. Python运算符表达式数据类型关键字

    2024-03-20 16:44:01       38 阅读
  2. python内置数据类型

    2024-03-20 16:44:01       22 阅读
  3. python数据类型运算符

    2024-03-20 16:44:01       25 阅读
  4. Redis的基本数据类型命令

    2024-03-20 16:44:01       50 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-20 16:44:01       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-20 16:44:01       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-20 16:44:01       87 阅读
  4. Python语言-面向对象

    2024-03-20 16:44:01       96 阅读

热门阅读

  1. 条件随机场(CRF)笔记

    2024-03-20 16:44:01       40 阅读
  2. 王道机试指南 复试机试准备day1

    2024-03-20 16:44:01       44 阅读
  3. AI自动绘画生成器,AI自动绘画工具使用教程

    2024-03-20 16:44:01       65 阅读
  4. 国内外主流 TOF 相机品牌与参数

    2024-03-20 16:44:01       68 阅读
  5. 【Python 48小时速成 4】注释

    2024-03-20 16:44:01       38 阅读
  6. C qsort 与 C++ sort 函数

    2024-03-20 16:44:01       49 阅读
  7. 【Python 48小时速成 3】输入与输出

    2024-03-20 16:44:01       44 阅读
  8. 用python实现视频异常检测

    2024-03-20 16:44:01       44 阅读