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常用模块用法分析
Sep 08 Python
Python标准库os.path包、glob包使用实例
Nov 25 Python
通过Python 接口使用OpenCV的方法
Apr 02 Python
Python3实现爬取指定百度贴吧页面并保存页面数据生成本地文档的方法
Apr 22 Python
Python WSGI的深入理解
Aug 01 Python
Python实现堡垒机模式下远程命令执行操作示例
May 09 Python
python和c语言的主要区别总结
Jul 07 Python
tensorflow如何批量读取图片
Aug 29 Python
python 实现将小图片放到另一个较大的白色或黑色背景图片中
Dec 12 Python
如何在pycharm中安装第三方包
Oct 27 Python
Django框架实现在线考试系统的示例代码
Nov 30 Python
python中复数的共轭复数知识点总结
Dec 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 sprintf()函数让你的sql操作更安全
2008/07/23 PHP
php+xml实现在线英文词典查询的方法
2015/01/23 PHP
php排序算法实例分析
2016/10/17 PHP
Laravel 5.4重新登录实现跳转到登录前页面的原理和方法
2017/07/13 PHP
PHP闭包定义与使用简单示例
2018/04/13 PHP
查询绑定数据岛的表格中的文本并修改显示方式的js代码
2009/12/15 Javascript
基于jQuery试卷自动排版系统
2010/07/18 Javascript
JavaScript中双叹号(!!)作用示例介绍
2014/04/10 Javascript
jQuery 顶部导航跟随滚动条滚动固定浮动在顶部
2014/06/06 Javascript
javascript页面倒计时实例
2015/07/25 Javascript
javascript实现input file上传图片预览效果
2015/12/31 Javascript
js中getBoundingClientRect的作用及兼容方案详解
2018/02/01 Javascript
jQuery实现的点击按钮改变样式功能示例
2018/07/21 jQuery
Angularjs之ngModel中的值验证绑定方法
2018/09/13 Javascript
如何在Vue.js中实现标签页组件详解
2019/01/02 Javascript
详解Vue前端对axios的封装和使用
2019/04/01 Javascript
详解js中let与var声明变量的区别
2020/04/05 Javascript
Typescript 中的 interface 和 type 到底有什么区别详解
2019/06/18 Javascript
uploadify插件实现多个图片上传并预览
2019/09/30 Javascript
wxPython中listbox用法实例详解
2015/06/01 Python
使用Python函数进行模块化的实现
2019/11/15 Python
Python 实现日志同时输出到屏幕和文件
2020/02/19 Python
Python Charles抓包配置实现流程图解
2020/09/29 Python
Python3.9新特性详解
2020/10/10 Python
SQL Server笔试题
2012/01/10 面试题
C# .NET面试题
2015/11/28 面试题
建筑毕业生自我鉴定
2013/10/18 职场文书
物流专业大学生求职信范文
2013/10/28 职场文书
省三好学生申请材料
2014/01/22 职场文书
人事助理自荐信
2014/02/02 职场文书
共筑中国梦演讲稿
2014/04/23 职场文书
理想点亮人生演讲稿
2014/05/21 职场文书
2014年学校后勤工作总结
2014/12/06 职场文书
2015年学校后勤工作总结
2015/04/08 职场文书
红灯733-1型14管5波段半导体收音机
2021/04/22 无线电
JavaScript流程控制(循环)
2021/12/06 Javascript