网络编程
位置:首页>> 网络编程>> Python编程>> 一起来学习Python的列表

一起来学习Python的列表

作者:__Miracle__  发布时间:2022-08-04 06:06:23 

标签:Python,列表

列表更多的方法

  • index():返回指定数据所在位置的下标 (注意:如果查找的数据不存在则报错。)。

  • count():统计指定数据在当前列表中出现的次数。

  • len():访问列表⻓度,即列表中数据的个数。

  • in:判断指定数据在某个列表序列,如果在返回True,否则返回False

  • not in:判断指定数据不在某个列表序列,如果不在返回True,否则返回False

  • append():列表结尾追加数据。

  • extend():列表结尾追加数据,如果数据是⼀个序列,则将这个序列的数据逐⼀添加到列表。

  • insert():指定位置新增数据。

  • pop():删除指定下标的数据(默认为最后⼀个),并返回该数据。

  • remove():移除列表中某个数据的第⼀个匹配项。

  • clear():清空列表

  • 逆置:reverse()

  • 排序:sort()

  • copy()

def generateRandomList(a, b, n, random_state):
   from random import randint, seed
   seed(random_state)
   ls = []
   for i in range(n):
       ls.append(randint(a, b))
   return ls
ls = generateRandomList(0, 100, 10, 666)
print(ls)  # [58, 48, 55, 36, 64, 1, 70, 70, 99, 91]
# index():返回指定数据所在位置的下标 (注意:如果查找的数据不存在则报错。)。
print(ls.index(55)) # 2
print(ls.index(70)) # 6
print(ls.index(70, 7, 9)) # 7
# print(ls.index(101)) ValueError: 101 is not in list
# - count():统计指定数据在当前列表中出现的次数。
print(ls.count(70)) # 2
print(ls.count(58)) # 1
print(ls.count(666)) # 0
# - len():访问列表⻓度,即列表中数据的个数。 len还可以使用在字符串/元组/字典等数据中
print(len(ls))
# 使用len进行列表遍历
for i in range(len(ls)):
   print(ls[i])
for x in ls:
   print(x)
# 自己实现index方法
def my_index(ls, val):
   for i in range(len(ls)):
       if ls[i] == val:
           return i
   return -1
print("myindex = ", my_index(ls, 70))
print("myindex = ", my_index(ls, 101))
# - in:判断指定数据在某个列表序列,如果在返回True,否则返回False
#- not in:判断指定数据不在某个列表序列,如果不在返回True,否则返回False
print(69 in ls)
print(70 in ls)
print(70 not in ls)
print(69 not in ls)

#- append():列表结尾追加数据。
#- extend():列表结尾追加数据,如果数据是⼀个序列,则将这个序列的数据逐⼀添加到列表。
# insert():指定位置新增数据。
hero_ls = []
hero_ls.append("鲁班七号")
hero_ls.append("妲己")
hero_ls.append(123)
print(hero_ls)
hero_ls.insert(1, "校领导")
hero_ls.insert(1, "校领导夫人")
print(hero_ls)
hero_ls.extend("BBQ")
print(hero_ls)
hero_ls.extend(['瑶', '暃'])
hero_ls.extend(['123'])
print(hero_ls)
#- pop():删除指定下标的数据(默认为最后⼀个),并返回该数据。
#- remove():移除列表中某个数据的第⼀个匹配项。
#- clear():清空列表
print(hero_ls.pop())
print(hero_ls.pop())
print(hero_ls.pop(1))
print(hero_ls)
hero_ls.remove('妲己')
print(hero_ls)
hero_ls.clear()
print(hero_ls)
# del hero_ls
# print(hero_ls)
# - 逆置:reverse()
lss = [1, 2, 3, 4, 5]
lss.reverse()
print(lss)
# - 排序:sort()
print(ls)
ls.sort()
print(ls)
ls.sort(reverse=True)
print(ls)
# - copy()
nls = lss.copy()
print(nls)
print(nls)

列表的嵌套

列表中还有列表, 可以表示数学中的矩阵

name_list = [['⼩明', '⼩红', '⼩绿'],
            ['Tom', 'Lily', 'Rose'],
            ['张三', '李四', '王五']]
print(name_list[1])
print(name_list[1][0])

练习

# 设计一个函数, 生成 n 行的 直角三角形 **, 存储到列表中返回
def generate(n):
   total_ls = []
   for i in range(n):
       ls = []
       for j in range(i+1):
           ls.append('* ')
       total_ls.append(ls)
   return total_ls
print(generate(6))
for row in generate(6):
   for v in row:
       print(v, end='')
   print()
## 设计一个发等额红包的函数
def send1(money, count):
   money*=100 #分
   m = money//count  # 每一份的金额
   l = money%count
   bag = []
   for i in range(count-1):
       bag.append(m/100)
   if l == 0:
       bag.append(m/100)
   else:
       bag.append((m+l)/100)
   return bag
print(send1(100, 3))
## 设计一个发手气红包的函数
def send2(money, count):
   money *= 100  # 分
   from random import randint
   bag = []
   for i in range(count - 1):
       m = money // count
       cur = 2*randint(0, m-1)
       money -= cur
       bag.append(cur/100)
   bag.append(money/100)
   return bag
print(send2(100, 3))
print(sum(send2(100, 3)))
## 设计一个抢红包的函数

来源:https://blog.csdn.net/qq_39276337/article/details/123620807

0
投稿

猜你喜欢

  • 项目需要,需要自动生成PDF测试报告。经过对比之后,选择使用了reportlab模块。 项目背景:开发一个测试平台,供测试维护测试用例,执行
  • 你写了一个Python 3程序,还想要它适用于其他语言。你能复制全部代码库,然后刻意地检查每个.py文件,替换掉所有找到的文本字符串。但这意
  • 在使用matplotlib模块时画坐标图时,往往需要对坐标轴设置很多参数,这些参数包括横纵坐标轴范围、坐标轴刻度大小、坐标轴名称等 在mat
  • 如果遇到与文件许可有关的问题,可能数启动mysqld时UMASK环境变量设置得不正确。例如,当你创建表时,MySQL可能会发出下述错误消息:
  •     可控制的滚动新闻不同于自动的滚动条,它是通过按钮控制移动的,当你把鼠标放在按钮上时,新闻内容就会向上或
  • 看过一篇关于下载网页中图片的文章,它只能下载以http头的图片,我做了些改进,可以下载网页中的所有连接资源,并按照网页中的目录结构建立本地目
  • 额额,标题已经很醒目了,通过中间件去实现,其他方法也可以实现浏览器前端传来的请求,必须通过中间件,才能到后面路由,视图函数,所以我们在中间件
  •     当然有,看看下面,你就会明白:<%Sub TimeDelaySeconds(Delay
  • 300来行python代码实现简易版学生成绩管理系统,供大家参考,具体内容如下使用链表来实现class Node(object): def
  • 写入文件使用open()函数和write()函数但是有两种写法,分别是'a'和'w'。'a'
  • 后边要做一个微信小程序,并要能获取用户微信绑定的手机号码。而小程序开发文档上边提供的获取手机号码的接口(getPhoneNumber())返
  • 一、采用?a=1&b=2访问修改views.py:views.pyfrom django.shortcuts import rend
  • 序言这不是圣诞节快到了,准备让让女朋友开心开心,也算是亲手做的,稍稍花了点心思。话不多说,咱们直接来展示吧,学会了赶紧画给你的那个她吧!本文
  • 在使用mysql视图是出现问题: The user specified as a definer ('root'@'
  • 要知道我们程序猿也是需要浪漫的,小博我之前在网上搜寻了很多代码,确发现好多都不是最新的,所以自己就整理了一下代码,现在与广大博友们分享下我们
  • 6、遮罩滤镜作用:该滤镜可以为对象建立一个覆盖于表面的膜,其效果就象戴着有色眼镜看物体一样。语法: {filter:mask(color=c
  • 方法一:利用Cookies对象 因为Cookies对象把变量的值保存在浏览器客户端,所以可以根据Cookies保存的IsVoted的值来判断
  • 在 做一些天气预报或者RSS订阅的程序时,往往需要抓取非本地文件,一般情况下都是利用php模拟浏览器的访问,通过http请求访问url地址,
  • 1、从外部文档中粘贴时,如果不想要其格式,只要文字,可以使用“Edit->paste as text”命令,而不要直接Ctrl+V。2
  • 1. 排序有什么用“排序”这个专业名词原本是来源于计算机程序操作中的,是一种很常见的算法设计,当然,对交互设计来说,探讨冒泡排序和堆排序之间
手机版 网络编程 asp之家 www.aspxhome.com