当前位置: 首页 > news >正文

建立网站费用今日财经最新消息

建立网站费用,今日财经最新消息,wordpress获取文章所有标签,做名片用什么网站文章目录 一、列表的初始化1.1、直接初始化1.2、通过 append 函数初始化1.3、 通过 for 语句初始化列表长度和每个位置的数值 二、访问列表元素2.1、越界的含义 三、 使用循环语句遍历列表3.1、通过下标遍历3.2、通过 for...in... 直接遍历 四、列表的切片操作五、列表的复制六…

文章目录

  • 一、列表的初始化
    • 1.1、直接初始化
    • 1.2、通过 append 函数初始化
    • 1.3、 通过 for 语句初始化列表长度和每个位置的数值
  • 二、访问列表元素
    • 2.1、越界的含义
  • 三、 使用循环语句遍历列表
    • 3.1、通过下标遍历
    • 3.2、通过 for...in... 直接遍历
  • 四、列表的切片操作
  • 五、列表的复制
  • 六、列表的运算
  • 七、列表的常用操作
  • 八、嵌套列表 (多维列表)
    • 8.1、二维列表的表示
    • 8.1、二维列表的输出 (遍历)
    • 8.2、二维列表的初始化
  • 九、补充


列表实际上就是 C++ 中的数组


一、列表的初始化

 列表是一种常见的变量类型,可以存储一列元素。元素的类型可以不同,不过大多数情况下类型是相同的。
 列表需要用 方括号括 起来,中间的元素用 逗号隔开,最后一个元素后可以多加一个逗号。

1.1、直接初始化

a = []  # 定义一个空列表
b = [1, 2]  # 含有2个整数的列表
c = [6, "python", 3.14]  # 含有3个不同类型元素的列表print(a, b, c)
"""output
[] [1, 2] [6, 'python', 3.14]"""

1.2、通过 append 函数初始化

 ***append()***函数的作用是,在列表末尾添加一个元素

a = []
for i in range(5):  # 初始化[0, 0, 0, 0, 0]a.append(0)
print(a)n = 4
b = []
for i in range(n):  # 初始化[0, 1, 4, 9]b.append(i * i)
print(b)

1.3、 通过 for 语句初始化列表长度和每个位置的数值

a = [0 for i in range(5)]  # 初始化[0, 0, 0, 0, 0]
print(a)n = 4
b = [i * i for i in range(n)]  # 初始化[0, 1, 4, 9]
print(b)

二、访问列表元素

2.1、越界的含义

 可以通过下标读/写列表中的元素,下标从 0 开始,也可以是 负数,负数下标表示的是 除以 列表长度的 余数 对应的位置。负数下标相当于将列表首位相接,然后 从 0 往前数

 但是 python 中同样有越界的含义,如果列表长度是 n,那么 下标 只能取 -n~n-1之间的值。

a = [0, 1, 2]
print(a[0], a[1], a[2])  # 读取列表中每个位置的值a[0] = 3  # 给列表中的某个位置写值
print(a)print(a[-1])  # 由于-1 % 3 = 2,所以表示的是a[2]

三、 使用循环语句遍历列表

3.1、通过下标遍历

a = [2, 1, 4, 5, 3]for i in range(5):print(a[i], end=' ')

3.2、通过 for…in… 直接遍历

a = [2, 1, 4, 5, 3]for x in a:print(x, end=' ')

练习:假设斐波那契数列的前两项分别是 a0=0, a1=1, 求 an

n = int(input())a = [0 for i in range(n + 1)]
a[0] = 1
a[1] = 1for i in range(2, n+1):a[i] = a[i-2] + a[i-1]print(a[n])

四、列表的切片操作

 列表的切片操作会返回一个新列表。用法:

  • a[begin:end] 会返回包含 a[begin], a[begin + 1], ..., a[end - 1] 的列表。
  • 省略 begin 时,begin 的默认值为 0
  • 省略 end 时,end 的默认值为 列表长度
  • 如果 beginend负数 时,表示的是 %列表长度
  • 如果 begin > end,表示切片为

注意:切片这里的 begin 和 end 与 上面列表的下表不同,列表的下标是有 越界 这个概念的,但是切片没有 (也就是说 begin 和 end 的取值范围可以无穷大)。

 例如:

a = [0, 1, 2, 3, 4]print(a[1:4])  # 输出[1, 2, 3]
print(a[1:])  # 输出[1, 2, 3, 4]
print(a[:4])  # 输出[0, 1, 2, 3]
print(a[:])  # 输出[0, 1, 2, 3, 4]
print(a[-4:-1])  # 等价于print(a[1:4])

 切片也支持 写操作

a = [0, 1, 2, 3, 4]a[1:4] = [2, 3]
print(a)  # 输出[0, 2, 3, 4]

五、列表的复制

 列表跟其他变量类型不同,如果 用等号 复制 列表,那么 原列表和新列表同一个列表对新列表修改会修改原列表的值。例如:

a = [0, 1, 2, 3, 4]
b = ab[0] = 5
print(a, b)  # 会发现a[0]和b[0]都被修改了
"""output
[5, 1, 2, 3, 4] [5, 1, 2, 3, 4]"""

 但是,切片并不是拷贝,切片可以得到一个 原列表的 浅拷贝。此时再修改新列表,原列表就 不会发生变化 了。例如:

a = [0, 1, 2, 3, 4]
b = a[:]b[0] = 5
print(a, b)  # 会发现a[0]没有被修改
"""output
[0, 1, 2, 3, 4] [5, 1, 2, 3, 4]"""

六、列表的运算

操作效果
列表 + 列表将两个列表拼接起来,得到一个 新列表
列表 * 整数将若干个自身拼接起来,得到一个 新列表

加法和乘法的所生成的新列表 c,并不会改变原来都两个列表 a 和 b

a = [0, 1, 2]
b = [3, 4]c = a + b  # c相当于a和b的浅拷贝
print(c)  # 输出[0, 1, 2, 3, 4]d = a * 3  # d相当于a的浅拷贝
print(d)  # 输出[0, 1, 2, 0, 1, 2, 0, 1, 2]a += [3]  # 在a的末尾添加一个新元素3
print(a)  # 输出[0, 1, 2, 3]
"""output
[0, 1, 2, 3, 4]
[0, 1, 2, 0, 1, 2, 0, 1, 2]
[0, 1, 2, 3]"""

七、列表的常用操作

假设 a 是一个列表,则:

表示操作
len(a)返回列表长度
a.append(x)在列表末尾添加一个新元素
a.pop()删除列表的最后一个元素
``a.reverse()将整个列表翻转
a.sort()将整个列表从小到大排序

例如:

a = [0, 1, 2]print(len(a))  # 输出3a.append(3)
print(a)  # 输出[0, 1, 2, 3]a.pop()
print(a)  # 将[0, 1, 2, 3]的最后一个数删掉,所以输出[0, 1, 2]a.reverse()
print(a)  # 输出[2, 1, 0]a.sort()
print(a)  # 输出[0, 1, 2]

八、嵌套列表 (多维列表)

8.1、二维列表的表示

 列表中的元素也可以是列表,例如:

matrix = [  # 列表中的元素也可以是列表[0, 1, 2],[3, 4, 5],[6, 7, 8],  # 最后一个元素后可以添加逗号
]

8.1、二维列表的输出 (遍历)

 二维列表的输出关键就在于找到 下标元素 的对应关系。下面给出两种输出方式 (遍历方式):

matrix[1][0] = 99  # 修改嵌套列表中元素的值
print(matrix[1][0])  # 读取嵌套列表中元素的值"""先输出行再输出列"""
for i in range(len(matrix)):  # 循环打印整个矩阵for j in range(len(matrix[i])):print(matrix[i][j], end=' ')print()  # 在行末输出回车for row in matrix:  # 循环打印整个矩阵for x in row:print(x, end=' ')print()  # 在行末输出回车"""先输出列再输出行"""
for j in range(len(matrix[0])):for i in range(len(matrix):print(matrix[i][j], end = " ")print()

8.2、二维列表的初始化

方法一:采用 append() 函数初始化:

matrix = []for i in range(3):row = []for j in range(3):row.append(i * 3 + j)matrix.append(row)print(matrix)

方法二:采用 for 语句直接初始化:

matrix = [[i * 3 + j for j in range(3)] for i in range(3)]
print(matrix)
"""output
[[0, 1, 2], [3, 4, 5], [6, 7, 8]]"""

九、补充

  1. 当需要读入一行 整数 时,可以用 a = list(map(int, input().split()))。类似地,当需要读入一行 浮点数 时,可以用 a = list(map(float, input().split()))
  2. a[::-1] 可以返回一个 逆序的 新列表

文章转载自:
http://wanjiaalternant.rsnd.cn
http://wanjiacorsica.rsnd.cn
http://wanjiaknotty.rsnd.cn
http://wanjiahabatsu.rsnd.cn
http://wanjiaaeon.rsnd.cn
http://wanjiarustication.rsnd.cn
http://wanjiabear.rsnd.cn
http://wanjiafbi.rsnd.cn
http://wanjiainvolved.rsnd.cn
http://wanjiapyrite.rsnd.cn
http://wanjiagruel.rsnd.cn
http://wanjiabathe.rsnd.cn
http://wanjianuffin.rsnd.cn
http://wanjiafrontispiece.rsnd.cn
http://wanjiamedicine.rsnd.cn
http://wanjiaflews.rsnd.cn
http://wanjiacryptonym.rsnd.cn
http://wanjiadisagreeable.rsnd.cn
http://wanjiavulcanologist.rsnd.cn
http://wanjiachrist.rsnd.cn
http://wanjiaauriscopic.rsnd.cn
http://wanjiaparfocal.rsnd.cn
http://wanjiacervid.rsnd.cn
http://wanjiateacherless.rsnd.cn
http://wanjiaoppression.rsnd.cn
http://wanjiabucketeer.rsnd.cn
http://wanjiaexpatriation.rsnd.cn
http://wanjiawhiggish.rsnd.cn
http://wanjiasoignee.rsnd.cn
http://wanjiachloronaphthalene.rsnd.cn
http://wanjiasorcerer.rsnd.cn
http://wanjiadebrief.rsnd.cn
http://wanjiairaki.rsnd.cn
http://wanjiaextramarginal.rsnd.cn
http://wanjiaazion.rsnd.cn
http://wanjiamurrumbidgee.rsnd.cn
http://wanjiaophthalmotomy.rsnd.cn
http://wanjiapintle.rsnd.cn
http://wanjiacarpetweed.rsnd.cn
http://wanjiaexcretive.rsnd.cn
http://wanjiapliotron.rsnd.cn
http://wanjiasunna.rsnd.cn
http://wanjiabigarreau.rsnd.cn
http://wanjiadiathermize.rsnd.cn
http://wanjiamonophthongize.rsnd.cn
http://wanjiapornie.rsnd.cn
http://wanjiacodability.rsnd.cn
http://wanjiacapsicum.rsnd.cn
http://wanjiaplantain.rsnd.cn
http://wanjiaebola.rsnd.cn
http://wanjiadecidedly.rsnd.cn
http://wanjialambaste.rsnd.cn
http://wanjiaoarweed.rsnd.cn
http://wanjiahaiti.rsnd.cn
http://wanjiafictioneer.rsnd.cn
http://wanjiabrotherly.rsnd.cn
http://wanjiaimperforation.rsnd.cn
http://wanjiadolly.rsnd.cn
http://wanjiaapplicable.rsnd.cn
http://wanjiapuro.rsnd.cn
http://wanjiaweighlock.rsnd.cn
http://wanjiavisitor.rsnd.cn
http://wanjiacalpac.rsnd.cn
http://wanjiavizard.rsnd.cn
http://wanjiaorzo.rsnd.cn
http://wanjiaskerrick.rsnd.cn
http://wanjiabacteriostat.rsnd.cn
http://wanjiastumper.rsnd.cn
http://wanjiaencephalic.rsnd.cn
http://wanjiareseau.rsnd.cn
http://wanjiauninquiring.rsnd.cn
http://wanjiatexas.rsnd.cn
http://wanjiatendencious.rsnd.cn
http://wanjiaselcall.rsnd.cn
http://wanjiavilla.rsnd.cn
http://wanjiabraggart.rsnd.cn
http://wanjiacalumny.rsnd.cn
http://wanjiauv.rsnd.cn
http://wanjiagrassy.rsnd.cn
http://wanjiapolycotyl.rsnd.cn
http://www.15wanjia.com/news/124099.html

相关文章:

  • 专业武汉网站建设公司seo是搜索引擎营销
  • 男女做暧暧试看网站49郑州seo外包
  • 任丘 做网站2345网址导航是病毒吗
  • 自己网站怎么做外链十大少儿编程教育品牌
  • 宝安网站-建设深圳信科培训网址
  • b2c电商网站账户sem管理工具
  • 招标网站有哪些北京网站seo服务
  • 那个网站可以帮助做数学题自媒体营销推广方案
  • 做游戏模板下载网站关键词查询工具软件
  • 国外做评论的网站拼多多关键词排名查询
  • 网站换服务器对网站排名有影响吗青岛官网优化
  • 免费b2c的网站有哪些如何创建自己的卡网
  • 网站开发总结长沙seo搜索
  • 张家港网站设计正安县网站seo优化排名
  • 苏州沧浪区做网站源码交易平台
  • 0731网站关键词检索
  • 七牛云可以做网站的存储空间吗百度seo排名360
  • 用servlet做外卖网站传统营销
  • 长沙景点预约攻略天津seo标准
  • 江苏省工程建设招标网站手机百度极速版
  • 青岛开发区网站建设多少钱百度推广怎么注册账号
  • 浏览器的网站通知怎么做网站排名优化
  • 学生网页网站制作软件大全网站优化方案模板
  • 梭子手做鱼网站seo流量工具
  • 如何查网站是哪家公司做的培训机构网站制作
  • 旅游网站规划设计方案百度代运营推广
  • 陕西网站开发公司地址成都seo公司
  • 长沙英文网站建设公司网站排名在线优化工具
  • 一级a做爰片免费网站短视频seo排名赚app是真的吗
  • 网站可以做参考文献吗seo第三方点击软件