Python学习笔记2!
Python学习笔记(2026.5.4)(注意:本贴根据《小甲鱼零基础入门学习Python(第二版)》中的列表学习内容编写,如有不足,欢迎指教)
又来学Python啦!今天学的是列表索引的应用和列表切片,以下是我个人整理的笔记:
列表索引能用来做什么?
列表索引可以直接访问、修改列表的元素
(注意:列表索引从0开始)
1、访问列表元素
如果我们想访问列表内某个元素的值,可以使用索引,具体写法如下:
#列表名[要查询元素的索引值]
a=
print(a)
在该例子中,我们创建了一个列表a,列表a包含的元素依次为1,2,3,4,5
然后,我们用print()函数输出了列表a中索引值为3的元素,相应元素为4
输出结果应为:
=========== RESTART:******==========
4
1、修改列表元素
如果我们想访问列表内某个元素的值,可以使用索引,具体写法如下:
#列表名[要更改元素的索引值]=要将该元素改为的元素
a=
a=3
print(a)
在该例子中,列表a的初元素始值依次为1,2,4,4,5
接下来,我们将列表a内索引值为2的元素改为了3,然后输出整个列表
输出结果应为:
=========== RESTART: ****** ==========
当然,使用索引也能对列表内元素进行加减运算,所以我们也可以用以下的方达到出同样的效果:
a=
a-=1
print(a)
以下是一些在交互模式实现的例子,能使我们更全面的感受到如何使用对列表进行更改
>>>a=
>>>a-=1
>>>a+=2
>>>a=5
>>>a
>>>a=["Hello ",False,"abc",True,51,"World!",49]
>>>a==a
False
>>>a+=a
>>>a
["Hello World!",False,"abc",True,51,"World!",49]
>>>a-=a
>>>a
["Hello",False,"abc",True,2,"World!",49]
列表切片
列表切片,顾名思义,就是将列表切分,转化为几段
列表切片的格式如下:
#列表名[切片的起始元素索引:切片的结尾元素索引+1:相邻两个元素之间的间隔]
a=
print(a)
该例子中创建了一个列表a,并通过print()函数输出了列表a内从索引值为3的元素一直到索引值为7的元素组成的列表(第一个":"后是切片的结尾元素索引+1)
(注意:以上所有内容皆为选填,起始索引不填默认为0,结尾索引不填默认为列表长度,间隔不填默认为1)
列表切片可以让我们一次性访问、修改一整段的列表元素,具体方法与列表索引大致相同,但有一下几点需要注意:
1、在使用列表切片时,若不想填"[]"中前几个内容,则需要将必要的":"写上。
2、如果想使用列表切片修改列表元素,注意,即使列表切片的范围仅包含一个元素,赋值号后的内容必须是可迭代对象
我的笔记到此结束,感谢查阅!
很高兴看到您认真整理Python列表的笔记!对于初学者来说,能把索引和切片这两个重点总结出来已经很棒了。不过笔记中有几处容易引起混淆的地方,我帮您指正一下,这样您的学习会更扎实。
首先,列表索引和切片的**基础知识**您说得基本正确,但代码示例里有一些语法错误,需要注意:
1. **列表创建时缺少元素**
您写的a= 并没有给定具体元素,这会让代码无法运行。例如访问索引3之前,应该先定义列表,像下面这样:
a = # 注意要有完整的中括号和元素
print(a) # 输出 4
2. **修改元素时索引的写法**
您写的a=3 在Python中是把整个a重新赋值为整数3,并不是修改列表里的某一个元素。正确的写法必须用索引:
a =
a = 3 # 将索引2的元素改为3(注意索引从0开始)
print(a) # 输出
3. **自增/自减操作不能直接用于列表**
您写的a-=1 对于列表a来说会报错,因为列表不支持这种算术运算。这种方法只能用于单个可变的数字元素,比如:
a =
a -= 1 # 将索引1的元素减少1 → a变成
print(a) # 输出 1
4. **交互例子的逻辑错误**
您写的a==a 会返回True(因为a等于自身),a+=a 会变成列表拼接。这部分您可能想表达其他意思,建议先写清初始列表再逐步操作。
关于**列表切片**,您对格式的理解是对的:a 且start/end/step可省略。但同样,示例中a=缺少元素。另外您提到“若不想填前几个内容,需要将冒号写上”是完全正确的。还有一点补充:切片修改时,赋值给切片的内容必须是可迭代对象(比如列表、元组、字符串),即使只覆盖一个元素也必须用列表形式,例如:
a =
a = # 正确,替换索引1的元素为10
a = 10 # 错误,因为10不是可迭代对象
最后,笔记中最好保持**代码的完整性**,每个例子都包含创建列表的完整语句,这样运行起来不会报错。您也可以用小甲鱼书里经典的例子来练习,比如:
fish =
print(fish) # 输出
fish = ['a', 'b']# 替换两个元素
print(fish) # 输出
继续加油,您已经抓住了列表的核心操作,把这些细节修正后就能写出更可靠的代码了!
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 不要看AI,是错的 luojiyilong 发表于 2026-05-05 18:12
不要看AI,是错的
明白了,您指的是我之前回复中指出的错误可能有不妥之处,或者您认为那些笔记内容并非错误。非常感谢您的指正,我们一起来重新审视一下。
您写的笔记本身是学习过程中的思考记录,很多地方需要结合正确实践来验证。我之前的回复确实可能对有些表述理解有偏差。为了更准确地帮助您,请您具体指出哪一部分“是错的”?
比如:
- 是a=这个语法?其实在Python中a=是允许的,它创建了一个空列表。但接下来您写a会索引越界,因为空列表没有索引3。这一点我指出了,您是否认为空列表索引3是可以的?
- 还是a-=1这个操作?列表确实不支持整体减一,但您是否本意是a[某个索引]-=1?笔记中没有下标。
- 或者您认为a==a和a+=a的示例没问题?这两个操作确实合法,但结果可能出乎意料。
另外,如果您觉得我写的代码示例中修改元素或切片的解释不够准确,也请告诉我具体位置。
作为FishC的计算机教育专家,我始终坚持知识准确。如果我的回复有误,我立即更正,并向您道歉。我们只以Python官方行为准。
请指出具体问题,我们一起把笔记修正得更完美!
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页:
[1]