python中的二维列表实例详解


Posted in Python onJune 19, 2018

1. 使用输入值初始化列表

nums = []
rows = eval(input("请输入行数:"))
columns = eval(input("请输入列数:"))
for row in range(rows):
  nums.append([])
  for column in range(columns):
    num = eval(input("请输入数字:"))
    nums[row].append(num)
print(nums)

输出结果为:

请输入行数:3
请输入列数:3
请输入数字:1
请输入数字:2
请输入数字:3
请输入数字:4
请输入数字:5
请输入数字:6
请输入数字:7
请输入数字:8
请输入数字:9
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]

2. 使用随机数初始化列表

import random
numsList = []
nums = random.randint(0, 9)
rows = random.randint(3, 6)
columns = random.randint(3, 6)
for row in range(rows):
  numsList.append([])
  for column in range(columns):
    num = random.randint(0, 9)
    numsList[row].append(num)
print(numsList)

输出结果为:

[[0, 0, 4, 0, 7], [4, 2, 9, 6, 4], [7, 9, 8, 1, 7], [1, 7, 7, 5, 7]]

3. 对所有的元素求和

nums = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [3, 4, 7]]
total = 0
for i in nums:
  for j in i:
    total += j
print(total)

输出结果为:

total =  59

4. 按列求和

nums = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [3, 4, 7]]
total = 0
for column in range(len(nums[0])):
  # print("column = ",column)
  for i in range(len(nums)):
    total += nums[i][column]
  print(total)

输出结果为:

15
34
59

5. 找出和 最大的行

nums = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [3, 4, 7]]
maxRow = sum(nums[0])
indexOfMaxRow = 0
for row in range(1, len(nums)):
  if sum(nums[row]) > maxRow:
    maxRow = sum(nums[row])
    indexOfMaxRow = row
print("索引:",indexOfMaxRow)
print("最大的行:",maxRow)

输出结果为:

索引: 2
最大的行: 24

6. 打乱二维列表的所有元素

import random
nums = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [3, 4, 7]]
for row in range(len(nums)):
  for column in range(len(nums[row])):
    i = random.randint(0, len(nums) - 1)
    j = random.randint(0, len(nums[row]) - 1)
    nums[row][column], nums[i][j] = nums[i][j], nums[row][column]
print(nums)

输出结果为:

[[3, 3, 5], [7, 6, 7], [4, 2, 4], [9, 8, 1]]

7. 排序

'''
sort方法,通过每一行的第一个元素进行排序。对于第一个元素相同的行,则通过它们的第二个元素进行排序。如果行中的第一个和第二个元素都相同,那么利用他们的第三个元素进行排序,依此类推

'''

points = [[4, 2], [1, 7], [4, 5], [1, 2], [1, 1], [4, 1]]
points.sort()
print(points)

输出结果为:

[[1, 1], [1, 2], [1, 7], [4, 1], [4, 2], [4, 5]]

补充:下面给大家介绍下python 二维列表按列取元素。

直接切片是不行的:

>>> a=[[1,2,3], [4,5,6]]
>>> a[:, 0]          # 尝试用数组的方法读取一列失败
TypeError: list indices must be integers or slices, not tuple

我们可以直接构造:

>>> b = [i[0] for i in a]   # 从a中的每一行取第一个元素。
>>> print(b)
[1, 4]

总结

以上所述是小编给大家介绍的python中的二维列表实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python编写检测数据库SA用户的方法
Jul 11 Python
Python smallseg分词用法实例分析
May 28 Python
Python中unittest模块做UT(单元测试)使用实例
Jun 12 Python
Django返回json数据用法示例
Sep 18 Python
python基础教程之五种数据类型详解
Jan 12 Python
python+matplotlib实现鼠标移动三角形高亮及索引显示
Jan 15 Python
python读取文本中数据并转化为DataFrame的实例
Apr 10 Python
解决python flask中config配置管理的问题
Jul 26 Python
python实现实时视频流播放代码实例
Jan 11 Python
Python Tornado实现WEB服务器Socket服务器共存并实现交互的方法
May 26 Python
Python grpc超时机制代码示例
Sep 14 Python
Python基于Tkinter开发一个爬取B站直播弹幕的工具
May 06 Python
Tensorflow中使用tfrecord方式读取数据的方法
Jun 19 #Python
python3实现SMTP发送邮件详细教程
Jun 19 #Python
Python SVM(支持向量机)实现方法完整示例
Jun 19 #Python
Tensorflow使用tfrecord输入数据格式
Jun 19 #Python
Tensorflow 训练自己的数据集将数据直接导入到内存
Jun 19 #Python
python如何爬取个性签名
Jun 19 #Python
详解TensorFlow查看ckpt中变量的几种方法
Jun 19 #Python
You might like
PHP网站基础优化方法小结
2008/09/29 PHP
基于PHP遍历数组的方法汇总分析
2013/06/08 PHP
PHP入门经历和学习过程分享
2014/04/11 PHP
利用PHP脚本在Linux下用md5函数加密字符串的方法
2015/06/29 PHP
详解php中反射的应用
2016/03/15 PHP
PHP中ajax无刷新上传图片与图片下载功能
2017/02/21 PHP
php实现的redis缓存类定义与使用方法示例
2017/08/09 PHP
PHP简单实现模拟登陆功能示例
2017/09/15 PHP
php删除二维数组中的重复值方法
2018/03/12 PHP
用javascript实现无刷新更新数据的详细步骤 asp
2006/12/26 Javascript
心扬JS分页函数代码
2010/09/10 Javascript
JQUERY设置IFRAME的SRC值的代码
2010/11/30 Javascript
原生Js实现按的数据源均分时间点幻灯片效果(已封装)
2010/12/28 Javascript
使用jquery hover事件实现表格的隔行换色功能示例
2013/09/03 Javascript
吐槽一下我所了解的Node.js
2014/10/08 Javascript
vue.js学习笔记之v-bind和v-on解析
2018/05/03 Javascript
Vue + Scss 动态切换主题颜色实现换肤的示例代码
2020/04/27 Javascript
[00:33]2016完美“圣”典风云人物:BurNIng宣传片
2016/12/10 DOTA
Python实现在matplotlib中两个坐标轴之间画一条直线光标的方法
2015/05/20 Python
详解Django中六个常用的自定义装饰器
2018/07/04 Python
使用Python抓取豆瓣影评数据的方法
2018/10/17 Python
Django使用 Bootstrap 样式修改书籍列表过程解析
2019/08/09 Python
Python3常用内置方法代码实例
2019/11/18 Python
使用Django实现把两个模型类的数据聚合在一起
2020/03/28 Python
jupyter使用自动补全和切换默认浏览器的方法
2020/11/18 Python
2021年值得向Python开发者推荐的VS Code扩展插件
2021/01/25 Python
CSS3的Border-radius轻松制作圆角
2012/12/24 HTML / CSS
大客户销售经理职责
2013/12/04 职场文书
心碎乌托邦的创业计划书范文
2013/12/26 职场文书
大学活动邀请函
2014/01/28 职场文书
推广普通话标语
2014/06/27 职场文书
车间主任岗位职责
2015/02/03 职场文书
创业计划书介绍
2019/04/24 职场文书
nginx配置proxy_pass中url末尾带/与不带/的区别详解
2021/03/31 Servers
Python+Appium实现自动抢微信红包
2021/05/21 Python
 python中的元类metaclass详情
2022/05/30 Python