Python入门(二)——列表初识-创建列表、删减元素、排序

什么是列表?列表由一系列按特定顺序排列的元素组成的最基本的数据结构,类似于C语言中的数组。

我们还是通过代码来学习,为了实时编译执行语句,使用Prompt来执行,并实时添加注释方便理解:

创建列表,使用列表元素

基本使用可以直接定义,定义之后可以直接使用列表中的某一个元素:

>>> English_Name = ['Paul','Lexi','penn','Tony']      #注意是[]不是{}
>>> My_English_Name = English_Name[-2]     #此处与C语言不同,[-2]代表列表倒数第二个元素,在不知道list大小的时候方便使用
>>> print("My English Name is ",My_English_Name.title(),'.')   #注意与C语言的区别,不需要%s
My English Name is  Penn .	#执行结果
>>> English_Name[1] = 'Jack'   		#想改变某个元素的值,直接赋值就完事了
>>> English_Name  		#在prompt里直接输入变量名称回车即可显示值,为了明晰,下面仍采用print的形式
['Paul', 'Jack', 'penn', 'Tony']
>>> Lenth = len(English_Name)		#获取列表长度
>>> print('Lenth = ',Lenth)
Lenth =  4

除此之外,可以利用循环语句来创建,还可以利用一些函数或方法来进行创建:

>>> English_Names = ['Paul', 'Jack', 'Alex', 'penn', 'Tony', 'Fizz']
>>> for English_Name in English_Names: #注意,有冒号啊啊啊啊
...     print(English_Name)#注意python没有括号,用严格的缩进来代替
...
Paul
Jack
Alex
penn
Tony
Fizz

>>> #利用for循环加上range :
>>> #创建数值列表
... #先看函数range()的使用
... for value in range(1,5):
...     print(value) #注意:此处打印只会打印出1234,range遇到最后一个数就停止了
...
1
2
3
4
>>> #使用range()创建数字列表
... numbers = list(range(1,6))
>>> print(numbers)
[1, 2, 3, 4, 5]
>>> #range函数还可以指定步长
... even_numbers = list(range(2,13,3))#2是起始值,3是步长,13是最大值,不可达,小于此值,没有等于
>>> print(even_numbers)
[2, 5, 8, 11]
 

当然还可以有其他操作

>>> #下面的代码演示了如何将前10个整数的平方加入到一个列表中:
... squares = []
>>> for num in range(1,11):
...     squares.append(num**2)
...
>>> print(squares)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

增减列表元素

>>> English_Name = ['Paul','Lexi','penn','Tony']
>>> #少了一个元素怎么办,随时添加
... #添加至列表末尾最后一个元素
... English_Name.append('Fizz')
>>> #用此方法甚至可以初始创建一个空列表English_Name =[],再逐个添加即可
... #同样可以添加至列表任意一个地方
... English_Name.insert(2,'Alex')
>>> print(English_Name)
['Paul', 'Lexi', 'Alex', 'penn', 'Tony', 'Fizz']
>>>
>>> #如果想删除某个元素,你可以这样做
... del English_Name[4]
>>> print(English_Name)
['Paul', 'Lexi', 'Alex', 'penn', 'Fizz']
>>> #你也可以使用弹栈的方式来做
... Popped_English_Name = English_Name.pop()
>>> print(English_Name)#弹出末尾元素之后剩下的列表成员
['Paul', 'Lexi', 'Alex', 'penn']
>>> print(Popped_English_Name)#被弹出的元素,还可以弹出任意元素
Fizz
>>> Mystyle_Name = English_Name.pop(3)
>>> print(English_Name)
['Paul', 'Lexi', 'Alex']
>>> print("So My Name Is "+Mystyle_Name.title(),'Lee')
So My Name Is Penn Lee
>>> #删除指定的一个元素
... Too_Low = 'Paul'
>>> English_Name.remove(Too_Low)
>>> print(English_Name)
['Lexi', 'Alex']

列表元素排序

>>> #元素排序
... #使用方法sort()对列表进行永久性排序
... English_Name = ['Paul','Lexi','penn','Tony']
>>> English_Name.sort()
>>> print(English_Name)
['Lexi', 'Paul', 'Tony', 'penn']
>>> English_Name = ['Paul','Lexi','penn','Tony']
>>> English_Name.sort(reverse=True)					#倒序排序
>>> print(English_Name)
['penn', 'Tony', 'Paul', 'Lexi']

>>> English_Name = ['Paul','Lexi','penn','Tony']
>>> Temp = sorted(English_Name)		#使用函数sorted()对列表进行临时排序,注意此处是函数,不是方法
>>> print(Temp)
['Lexi', 'Paul', 'Tony', 'penn']
>>> print(English_Name)
['Paul', 'Lexi', 'penn', 'Tony']

>>> English_Name = ['Paul','Lexi','penn','Tony']
>>> English_Name.reverse()		#倒序打印列表
>>> print(English_Name)#永久性的,想恢复得再次使用reverse方法
['Tony', 'penn', 'Lexi', 'Paul']
>>> English_Name.reverse()
>>> print(English_Name)
['Paul', 'Lexi', 'penn', 'Tony']

其他简单元素操作

>>> #对数字列表执行简单的统计计算
... nums = [0,1,2,3,4,5,6,7,8,9]
>>> print(min(nums),max(nums),sum(nums))
0 9 45
>>>
>>> #列表解析,这种方法大大减少代码量,提高效率
... squars = [num**2 for num in range(1,11)] #把range(1,11)的各个值传给num,再执行num**2
>>> print(squars)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
>>>
>>> #1-100求和,从未如此简单,哈哈
... print("Sum of 1-100 is",sum(list(range(1,101))))
Sum of 1-100 is 5050
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值