不愧是清华大佬把python基础讲得这么详细——元组与列表
元组
元组使用小括号(),也称为圆括号,表示的哦!!!
# 定义一个元组,
fly=(200,20)
# 我们可以像列表那样打印它
print(fly[0])
print(fly[1])
复制代码
可以像列表一样进行打印,但是却不能像列表那样进行修改元素值
# 定义一个元组,
fly=(200, 20)
# 修改元素的值
fly[0]=100
# 我们可以像列表那样打印它
print(fly[0])
print(fly[1])
复制代码
修改元组的元素,python就会报错!告诉你fly[0]=100,这里是不可行的。
遍历
# 定义一个元组,
fly = (200, 20, 30)
for fly_num in fly:
print(fly_num)
复制代码
写法其实跟列表的没什么太大的区别,都是通过定义变量fly_num去循环元组的变量fly然后进行打印。
修改元组
我们上一个例子中元组的两个值虽然不能直接地改变,但是我们可以重新定义变量!!!
# 定义一个元组,
fly=(200, 20)
for fly_num in fly:
print(fly_num)
# 再次定义一个相同的变量
fly=(400,40)
# 使用上一个相同的变量进行for循环
for fly_num in fly:
print(fly_num)
复制代码
这样子我们的fly变量的值就改变了,这样子写在python中也是允许的,合法的,就是麻烦了点啦!
元组还是跟列表有一定区别,最为明显的就是元组用()表示,列表用[]表示,可别看错了。元组也是不可变的,不能像字符串一样被修改,添加,删除。
list_number=('tom','luci','xifa','BOB')
list_number[1]='mm'
print(list_number)
复制代码
这里用下标值进行修改,就会报出对象不支持分配的错误,如:
Traceback (most recent call last):
File "D:/Python/TuLing/草稿.py", line 20, in
list_number[1]='mm'
TypeError: 'tuple' object does not support item assignment
复制代码
注意:这是一个错误的例子!!!
类型转换
list_number=('tom','luci','xifa','BOB')
print(list(list_number))
# 元组转换成列表:
# ['tom', 'luci', 'xifa', 'BOB']
复制代码
list_number=['tom','luci','xifa','BOB']
print(tuple(list_number))
# 列表转换成元组:
# ('tom', 'luci', 'xifa', 'BOB')
复制代码取值
元组取值也是用下标取值的
list_number=('tom','luci','xifa','BOB','清安无别事')
print(list_number[-1])
# 其结果是
# 清安无别事
复制代码
list_number=('tom','luci','xifa','BOB','清安无别事')
print(list_number[-1])列表
列表:主要使用[ ]来表示,我这里的加了一个空格,便于看清哦!,看下面的例子
# 这里声明一个变量,后续便于输出
class_name=["python", "java", "c", "php"]
复制代码
这就是一个简单的列表,[ ]加字符串组成,那么如何访问呢,其实跟我之前的一样,直接打印就好了
print(class_name)
复制代码
我们利用索引来取值,列表的左边第一个值,索引值为0,自左向右推,python索引值为0,Java为1...
# 这里声明一个变量,后续便于输出
class_name=["python", "java", "c", "php"]
print(class_name) # 打印class_name列表
print(class_name[0]) # 索引输出python
print(class_name[1]) # 索引输出java
print(class_name[-1]) # 这里的-1是打印列表最后一个值,从右往左索引值依次增加为:-1,-2...
print(class_name[-2]) # 打印倒数第二个值
复制代码
用上述的例子,我们可以恰当地使用其中一个值,上一节课讲过的哦:可以适当地举一反三哦!
# 这里声明一个变量,后续便于输出
class_name=["python", "java", "c", "php"]
# 使首字母大写
print(f"This is {class_name[0].title()}")
复制代码修改元素
# 这里声明一个变量,后续便于输出
class_name=["python", "java", "c", "php"]
# 打印原来的值,便于比较
print(class_name)
# 利用索引进行修改里面的值
class_name[0]="html" #修改列表的第一个元素
class_name[1]="大数据" #修改列表的第二个元素
print(class_name)
复制代码添加元素
添加的值附加在列表的末尾
# 这里声明一个变量,后续便于输出
class_name=["python", "java", "c", "php"]
# 打印原来的值,便于比较
print(class_name)
# 在列表的末尾添加一个元素
class_name.append("html")
print(class_name)
复制代码插入元素
# 这里声明一个变量,后续便于输出
class_name=["python", "java", "c", "php"]
# 打印原来的值,便于比较
print(class_name)
# 在列表索引值0的位置前面插入一个元素
class_name.insert(0, "html")
print(class_name)
复制代码删除元素
有两种方法,一种是.del,一种是.pop():游戏账号出售平台两者的区别,让我们来理解一下吧:del方法可以删除任意位置的列表元素,只需要知道它的索引值即可,删除后就无法再进行访问了当你需要删除列表的值后,又需要使用它时,就可以用到.pop()方法了,.pop()是删除末尾的元素,也可以通过索引指定移出元素,这里的删除其实先当于将元素移出当前列表
class_name=["python", "java", "c", "php"]
# 通过索引来删除元素,删除后且无法再次使用
del class_name[0]
print(class_name)
复制代码
# 这里声明一个变量,后续便于输出
class_name=["python", "java", "c", "php"]
# 打印原来的值,便于比较
print(class_name)
# 移出末尾的值
poppd=class_name.pop()
# 打印我们之前移出的末尾的值
print(f"This is {poppd.title()}")
# eg:
# 你也可以通过索引来指定移出哪个元素
# poppd=class_name.pop(1)
复制代码
根据值来删除元素:这个用法还是比较简单的,当你不知道想要删除的元素所处的位置时,就用指定值来删除指定元素.remove():
# 这里声明一个变量,后续便于输出
class_name=["python", "java", "c", "php"]
# 打印原来的值,便于比较
print(class_name)
class_name.remove("java")
print(class_name)
复制代码
remove方法删除之后其实也可以使用,看下面的例子:
class_name=["python", "java", "c", "php"]
class_remove="java" # 定义一个变量接受赋值,指定删除java
class_name.remove(class_remove) # 删除列表中的值,因为前面我们已经指定的删除谁
print(f"I like {class_remove.title()}")
复制代码
本篇就到这了,下一章我们同步讲列表的其他操作方法。