python中的二维列表实例详解
作者:xiaotao_1 发布时间:2022-03-26 05:17:11
标签:python,二维,列表
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中的二维列表实例详解网站的支持!
来源:https://blog.csdn.net/dimples_54/article/details/74885794
0
投稿
猜你喜欢
- Python中默认安装的ftplib模块定义了FTP类,其中函数有限,可用来实现简单的ftp客户端,用于上传或下载文件.FTP的工作流程及基
- CSS 盒模型网页设计中的每个元素都是长方形的盒子。盒子的尺寸是怎样精确计算的,请看下图:如果是 Firebug 用户的话(基本和前端有关的
- 本文实例讲述了PHP基于迭代实现文件夹复制、删除、查看大小等操作的方法。分享给大家供大家参考,具体如下:前面一篇 PHP递归实现文件夹的复制
- 相信大家对阶乘都不陌生。不知道阶乘的可以看这里:一个数的阶乘:比如5的阶乘在python中大部分教程一般推荐用递归函数完成:#!/usr/b
- 一、包的导入Golang 当导入多个包时,一般按照字母顺序排列包名称,像Goland 等IDE 会在保存文件时自动完成这个动作。Golang
- 什么是正则表达式?1、正则表达式是检擦、匹配字符串的表达式2、正则表达式是描述规则,主流语言都有良好支持3、字符串校验、查找与替换是正则表达
- 文章主要描述的是SQL Server数据库和Oracle数据库行转列的一种比较典型操作方法,对于有些业务来说,数据在表中的存储与其最终的Gr
- QueryCache(下面简称QC)是根据SQL语句来cache的。一个SQL查询如果以select开头,那么MySQL服务器将尝试对其使
- 原型扩展:>> String.prototype :String对象原型扩展 --------------
- 前三篇文章中,明确了栅格系统的设计细节和适用范围。这一篇将集中讨论960栅格系统的技术实现。Blueprint的实现Blueprint是一个
- 有时我们需要较为实时的查看服务器上的网卡流量,这里我写了两个小脚本,一个用shell(先写的,一次只能查看一个网卡),另一个用Python(
- 1、下载mysql-python官网地址:http://sourceforge.net/projects/mysql-python/2、安装
- PHP从主流来看,是一门面向过程的语言,它的最大缺点就是无法实现多线程管理,其程序的执行都是从头到尾,按照逻辑一路执行下来,不可能出现分支,
- 又从 James Padolsey 这里得到个好的点子。在实际写脚本过程中可能有段 Javascript 和 HTML 非常相关(比如实例化
- <% Rem Rem ## 在线升级类声明 Class Cls_oUpdate
- Chrome的CSS支持程度 :Green / √ means current support.Orange / Δ means that
- 以下测试用于去除任何字符串中连线的分隔符 代码如下:--去除字符串中连续的分隔符 declare @str nvarchar(200) de
- 直接给源代码了:$current_dir = 'E:/temp/';$dir = opendir($current_dir)
- 在 Class 块中,成员通过相应的声明语句被声明为 Private(私有成员,只能在类内部调用)
- 企业管理器中没有改数据库名的功能,如果一定要用企业管理器来实现,你可以备份数据库,然后还原,在还原时候可以指定另一个库名,然后再删除旧库就行