鱼C论坛

 找回密码
 立即注册
查看: 1265|回复: 5

[已解决]python二维列表 添加问题

[复制链接]
发表于 2021-11-3 20:41:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 admintest166 于 2021-11-3 20:44 编辑

代码和打印输出如下所示
我创了两个循环 i循环4次 然后random随机产生1个数 (循环4次 随机出4个数字) k循环也是一样

我希望i的结果是[[1,2,3,4],[5,6,7,8]]
而现在输出的结果是两个循环在一个列表中
下图输出的效果我希望是  [[3,1,4,5],[5,6,6,6]]
因为很久没接触python了 希望各位大佬帮解答一下下 ~
import random

a=[]
b=[]
def test():


    for i in range(4):
        yy=random.randint(1,5)
        b.append(yy)
    a.append(b)


    for k in range(4):
        cc=random.randint(5,10)
        b.append(cc)

    a.append(b)
test()
print(a)
最佳答案
2021-11-3 21:26:21
admintest166 发表于 2021-11-3 21:03
还有个小问题~
如下 代码我想调用两次函数  每次填写的元素存储在一个列表中 两次调用就是二 ...
a = []


def test():
    t = []
    for i in range(2):
        t.append(input('请输入:'))
    a.append(t)


test()
print('第二次')
test()
print(a)
求组.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-11-3 20:50:24 | 显示全部楼层
本帖最后由 傻眼貓咪 于 2021-11-3 20:59 编辑
import random

a=[]
b=[]
def test():


    for i in range(4):
        yy=random.randint(1,5)
        b.append(yy) # 你这里用列表 b
    a.append(b)


    for k in range(4):
        cc=random.randint(5,10)
        b.append(cc)  # 你这里也用列表 b,所以列表 b 越来越多元素

    a.append(b)
test()
print(a)
正解:
import random
arr = [random.choices(range(1, 6), k = 4), random.choices(range(6, 11), k = 4)]
print(arr)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-11-3 20:51:19 | 显示全部楼层
a = []
a.append(random.choices(range(1, 6), k=4))
a.append(random.choices(range(6, 11), k=4))
print(a)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-11-3 20:54:39 | 显示全部楼层
import random

def test():
    b , c = [] , []
    for _ in range(4):
        b . append(random . randint(1 , 5))
    a . append(b)
    for _ in range(4):
        c . append(random . randint(5 , 10))
    a . append(c)

a = []
test()
print(a)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-11-3 21:03:59 | 显示全部楼层

还有个小问题~
如下 代码我想调用两次函数  每次填写的元素存储在一个列表中 两次调用就是二维列表存储 如[[1,2],[3,4]] 要怎么改呢
a=[]
def test():
    for i in range(2):
        user=input('请输入:')
        a.append(user)
test()
print('第二次')
test()
print(a)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-11-3 21:26:21 | 显示全部楼层    本楼为最佳答案   
admintest166 发表于 2021-11-3 21:03
还有个小问题~
如下 代码我想调用两次函数  每次填写的元素存储在一个列表中 两次调用就是二 ...
a = []


def test():
    t = []
    for i in range(2):
        t.append(input('请输入:'))
    a.append(t)


test()
print('第二次')
test()
print(a)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-12 20:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表