Python 运算符与列表(list)
Python 运算符
运算符用于对变量和值执行运算。Python将运算符分为以下几类:
算术运算符
算术运算符与数值一起使用以执行常见的数学运算:
操作符 | 名称 | 例子 |
---|---|---|
+ | 加法 | x + y |
- | 减法 | x - y |
* | 乘法 | x * y |
/ | 除法 | x / y |
% | 模运算 | x % y |
** | 求幂 | x ** y |
// | 除法向下取整 | x // y |
赋值运算符
赋值运算符用于为变量赋值:
操作符 | 例子 | 等价于 |
---|---|---|
= | x = 5 | x = 5 |
+= | x += 3 | x = x + 3 |
-= | x -= 3 | x = x - 3 |
*= | x *= 3 | x = x * 3 |
/= | x /= 3 | x = x / 3 |
%= | x %= 3 | x = x % 3 |
//= | x //= 3 | x = x // 3 |
**= | x **= 3 | x = x ** 3 |
&= | x &= 3 | x = x & 3 |
|= | x |= 3 | x = x | 3 |
^= | x ^= 3 | x = x ^ 3 |
>>= | x >>= 3 | x = x >> 3 |
<<= | x <<= 3 | x = x << 3 |
比较运算符
比较运算符用于比较两个值:
操作符 | 名称 | 例子 |
---|---|---|
== | 等于 | x == y |
!= | 不相等 | x != y |
> | 大于 | x > y |
< | 小于 | x < y |
>= | 大于或等于 | x >= y |
<= | 小于或等于 | x <= y |
逻辑运算符
逻辑运算符用于组合条件语句:
操作符 | 描述 | 例子 |
---|---|---|
and | 如果两个语句都为True,则返回True | x < 5 and x < 10 |
or | 如果其中一个语句为True,则返回True | x < 5 or x < 4 |
not | 反转结果,如果结果为True,则返回False | not(x < 5 and x < 10) |
身份运算符
身份运算符用于比较对象,不是比较它们是否相等,而是比较它们是否是相同的对象,并且具有相同的内存位置:
操作符 | 描述 | 例子 |
---|---|---|
is | 如果两个变量都是相同的对象,则返回true | x is y |
is not | 如果两个变量都不相同,则返回true | x is not y |
成员运算符
成员运算符用于测试对象中是否存在序列:
操作符 | 描述 | 例子 |
---|---|---|
in | 如果对象x中的y中存在具有指定值的序列,则返回True | x in y |
not in | 如果对象x中不存在指定值的序列,则返回True | x not in y |
按位运算符
按位运算符用于比较(二进制)数字:
操作符 | 描述 | 例子 |
---|---|---|
& | AND - 如果两个位均为1,则将每个位设置为1 | |
| | OR - 如果两位之一为1,则将每个位设置为1 | |
^ | XOR - 如果只有一位为1,则将每个位设置为1 | |
~ | NOT - 反转所有位 | |
<< | 零填充左移 - 向右推零,向左移动,让最左边的位掉落 | |
>> | 签署右移 - 通过从左侧推入最左边的位的副本向右移动,并让最右边的位掉落 |
Python 列表(list)
Python 集合(数组)
Python编程语言中有四种收集数据类型:
List(列表) - 是有序且可更改的集合。允许重复的成员。
Tuple(元组) - 是有序且不可更改的集合。允许重复的成员。
Set(集合) - 是无序和未索引的集合。没有重复的成员。
Dictionary(字典) - 是无序,可变和索引的集合。没有重复的成员。
列表定义
列表(List)是有序且可更改的集合。在Python中,列表用方括号括起来。
python
thislist = ["apple", "banana", "cherry"] print(thislist)
访问项目
您通过引用索引号访问列表项:
python
# 打印列表的第二项: thislist = ["apple", "banana", "cherry"] print(thislist[1])
负索引
负索引是指从头开始,-1指的是最后一项,-2指的是倒数第二项,依此类推。
python
# 打印列表的最后一项: thislist = ["apple", "banana", "cherry"] print(thislist[-1])
索引范围
您可以通过指定范围的起点和终点来指定索引范围。指定范围时,返回值将是包含指定项目的新列表。
python
# 返回第三,第四和第五项: thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"] print(thislist[2:5])
注意: 搜索将从索引2(包括)开始,到索引5(不包括)结束。请记住,第一项的索引为0。
通过省略起始值,范围将从第一项开始:
python
# 本示例将项目从开头返回到"orange": thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"] print(thislist[:4])
通过省略结束值,范围将继续到列表的末尾:
python
# 此示例从"cherry"到最后返回项目: thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"] print(thislist[2:])
负索引范围
如果要从列表末尾开始搜索,请指定负索引:
python
# 本示例将项目从索引-4(包括)返回到索引-1(排除) thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"] print(thislist[-4:-1])
更改项目的值
要更改特定项目的值,请参考索引号:
python
# 更改第二项: thislist = ["apple", "banana", "cherry"] thislist[1] = "blackcurrant" print(thislist)
遍历列表
您可以使用 for 循环来遍历列表项:
python
# 一个一个地打印列表中的所有项目: thislist = ["apple", "banana", "cherry"] for x in thislist:print(x)
检查项目是否存在
要确定列表中是否存在指定的项目,请使用in关键字:
python
# 检查列表中是否存在"apple": thislist = ["apple", "banana", "cherry"] if "apple" in thislist:print("Yes, 'apple' is in the fruits list")
列表长度
要确定列表中有多少项,请使用以下 len() 函数:
python
# 打印列表中的项目数: thislist = ["apple", "banana", "cherry"] print(len(thislist))
新增项目
要将项目添加到列表的末尾,请使用 append() 方法:
python
# 使用 append() 方法附加项目: thislist = ["apple", "banana", "cherry"] thislist.append("orange") print(thislist)
要在指定的索引处添加项目,请使用 insert() 方法:
python
# 插入一个项目作为第二个位置: thislist = ["apple", "banana", "cherry"] thislist.insert(1, "orange") print(thislist)
删除项目
有几种方法可以从列表中删除项目:
remove() 方法删除指定的项目:
python
thislist = ["apple", "banana", "cherry"] thislist.remove("banana") print(thislist)
pop() 方法删除指定的索引(如果未指定index,则删除最后一项):
python
thislist = ["apple", "banana", "cherry"] thislist.pop() print(thislist)
del 关键字删除指定索引:
python
thislist = ["apple", "banana", "cherry"] del thislist[0] print(thislist)
del 关键字也可以完全删除列表:
python
thislist = ["apple", "banana", "cherry"] del thislist
clear() 方法清空列表:
python
thislist = ["apple", "banana", "cherry"] thislist.clear() print(thislist)
复制列表
有很多方法可以制作副本,一种方法是使用内置的List方法 copy()。
python
# 使用 copy() 方法复制列表: thislist = ["apple", "banana", "cherry"] mylist = thislist.copy() print(mylist)
制作副本的另一种方法是使用内置方法 list()。
python
# 使用 list() 方法复制列表: thislist = ["apple", "banana", "cherry"] mylist = list(thislist) print(mylist)
合并两个列表
在Python中,有几种方法可以连接或连接两个或多个列表。
使用 + 运算符合并列表:
python
list1 = ["a", "b", "c"] list2 = [1, 2, 3] list3 = list1 + list2 print(list3)
将list2中的所有项一个接一个地追加到list1中:
python
list1 = ["a", "b", "c"] list2 = [1, 2, 3]for x in list2:list1.append(x)print(list1)
使用 extend() 方法将list2添加到list1的末尾:
python
list1 = ["a", "b", "c"] list2 = [1, 2, 3]list1.extend(list2) print(list1)
list() 构造函数
使用 list() 构造函数创建一个列表:
python
thislist = list(("apple", "banana", "cherry")) # 注意双圆括号 print(thislist)
列表方法
Python 有一组内置方法,可在列表上使用。
方法 | 描述 |
---|---|
append() | 在列表末尾添加元素 |
clear() | 从列表中删除所有元素 |
copy() | 返回列表的副本 |
count() | 返回具有指定值的元素数 |
extend() | 将列表(或任何可迭代)的元素添加到当前列表的末尾 |
index() | 返回具有指定值的第一个元素的索引 |
insert() | 在指定位置添加元素 |
pop() | 删除指定位置的元素 |
remove() | 删除具有指定值的项目 |
reverse() | 颠倒列表的顺序 |
sort() | 排序列表 |
这篇文章详细介绍了Python中的各种运算符和列表的使用方法,涵盖了从基本操作到高级技巧的各个方面,是学习Python编程的重要基础知识。