如何在Python中的数组中创建数组?

2024-10-05 14:21:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试用python创建UNO,我已经将所有的卡片分类到不同的数组中,但是要绘制卡片,我需要创建一个包含不同卡片的所有数组的数组。你知道吗

cards = [yellowcards = [Cards.yellow0, Cards.yellow1, Cards.yellow2, Cards.yellow3, Cards.yellow4, Cards.yellow5, Cards.yellow6,
         Cards.yellow7, Cards.yellow8, Cards.yellow9, Cards.yellowmiss, Cards.yellowreverse, Cards.yellow_2,
         Cards.yyellow1, Cards.yyellow2, Cards.yyellow3, Cards.yyellow4, Cards.yyellow5, Cards.yyellow6,
         Cards.yyellow7, Cards.yyellow8, Cards.yyellow9, Cards.yyellowmiss, Cards.yyellowreverse, Cards.yyellow_2],
         greencards = [Cards.green0, Cards.green1, Cards.green2, Cards.green3, Cards.green4, Cards.green5, Cards.green6,
         Cards.green7, Cards.green8, Cards.green9, Cards.greenmiss, Cards.greenreverse, Cards.green_2,
         Cards.ggreen1, Cards.ggreen2, Cards.ggreen3, Cards.ggreen4, Cards.ggreen5, Cards.ggreen6,
         Cards.ggreen7, Cards.ggreen8, Cards.ggreen9, Cards.ggreenmiss, Cards.ggreenreverse, Cards.ggreen_2],
         bluecards = [Cards.blue0, Cards.blue1, Cards.blue2, Cards.blue3, Cards.blue4, Cards.blue5, Cards.blue6,
         Cards.blue7, Cards.blue8, Cards.blue9, Cards.bluemiss, Cards.bluereverse, Cards.blue_2,
         Cards.bblue1, Cards.bblue2, Cards.bblue3, Cards.bblue4, Cards.bblue5, Cards.bblue6,
         Cards.bblue7, Cards.bblue8, Cards.bblue9, Cards.bbluemiss, Cards.bbluereverse, Cards.bblue_2],
         redcards = [Cards.red0, Cards.red1, Cards.red2, Cards.red3, Cards.red4, Cards.red5, Cards.red6,
         Cards.red7, Cards.red8, Cards.red9, Cards.redmiss, Cards.redreverse, Cards.red_2,
         Cards.rred1, Cards.rred2, Cards.rred3, Cards.rred4, Cards.rred5, Cards.rred6,
         Cards.rred7, Cards.rred8, Cards.rred9, Cards.rredmiss, Cards.rredreverse, Cards.rred_2],
         wildcards = [Cards.wild1, Cards.wild2, Cards.wild3, Cards.wild4, Cards.wilddraw1, Cards.wilddraw2,
         Cards.wilddraw3, Cards.wilddraw4]]

Tags: 绘制分类数组unocardsyellow2yellow6yellowcards
3条回答

不能像以前那样在另一个数组中声明数组。你必须在外面申报:

yellowcards = [Cards.yellow0, Cards.yellow1, Cards.yellow2, Cards.yellow3, Cards.yellow4, Cards.yellow5, Cards.yellow6,
     Cards.yellow7, Cards.yellow8, Cards.yellow9, Cards.yellowmiss, Cards.yellowreverse, Cards.yellow_2,
     Cards.yyellow1, Cards.yyellow2, Cards.yyellow3, Cards.yyellow4, Cards.yyellow5, Cards.yyellow6,
     Cards.yyellow7, Cards.yyellow8, Cards.yyellow9, Cards.yyellowmiss, Cards.yyellowreverse, Cards.yyellow_2]
greencards = [Cards.green0, Cards.green1, Cards.green2, Cards.green3, Cards.green4, Cards.green5, Cards.green6,
     Cards.green7, Cards.green8, Cards.green9, Cards.greenmiss, Cards.greenreverse, Cards.green_2,
     Cards.ggreen1, Cards.ggreen2, Cards.ggreen3, Cards.ggreen4, Cards.ggreen5, Cards.ggreen6,
     Cards.ggreen7, Cards.ggreen8, Cards.ggreen9, Cards.ggreenmiss, Cards.ggreenreverse, Cards.ggreen_2]
bluecards = [Cards.blue0, Cards.blue1, Cards.blue2, Cards.blue3, Cards.blue4, Cards.blue5, Cards.blue6,
     Cards.blue7, Cards.blue8, Cards.blue9, Cards.bluemiss, Cards.bluereverse, Cards.blue_2,
     Cards.bblue1, Cards.bblue2, Cards.bblue3, Cards.bblue4, Cards.bblue5, Cards.bblue6,
     Cards.bblue7, Cards.bblue8, Cards.bblue9, Cards.bbluemiss, Cards.bbluereverse, Cards.bblue_2]
redcards = [Cards.red0, Cards.red1, Cards.red2, Cards.red3, Cards.red4, Cards.red5, Cards.red6,
     Cards.red7, Cards.red8, Cards.red9, Cards.redmiss, Cards.redreverse, Cards.red_2,
     Cards.rred1, Cards.rred2, Cards.rred3, Cards.rred4, Cards.rred5, Cards.rred6,
     Cards.rred7, Cards.rred8, Cards.rred9, Cards.rredmiss, Cards.rredreverse, Cards.rred_2]
wildcards = [Cards.wild1, Cards.wild2, Cards.wild3, Cards.wild4, Cards.wilddraw1, Cards.wilddraw2,
     Cards.wilddraw3, Cards.wilddraw4]
cards = [yellowcards, greencards, bluecards, redcards, wildcards]

基本上你就是这么做的

>>> [a=[34,34],b=[23,34]]
SyntaxError: invalid syntax

这种作业不起作用。你知道吗

不管怎样

>>> a=[34,34]
>>> b=[23,34]
>>> [a,b]
[[34, 34], [23, 34]]

所以就你而言

yellowcards = [Cards.yellow0, Cards.yellow1, Cards.yellow2, Cards.yellow3, Cards.yellow4, Cards.yellow5, Cards.yellow6,
     Cards.yellow7, Cards.yellow8, Cards.yellow9, Cards.yellowmiss, Cards.yellowreverse, Cards.yellow_2,
     Cards.yyellow1, Cards.yyellow2, Cards.yyellow3, Cards.yyellow4, Cards.yyellow5, Cards.yyellow6,
     Cards.yyellow7, Cards.yyellow8, Cards.yyellow9, Cards.yyellowmiss, Cards.yyellowreverse, Cards.yyellow_2]

greencards = [Cards.green0, Cards.green1, Cards.green2, Cards.green3, Cards.green4, Cards.green5, Cards.green6,
     Cards.green7, Cards.green8, Cards.green9, Cards.greenmiss, Cards.greenreverse, Cards.green_2,
     Cards.ggreen1, Cards.ggreen2, Cards.ggreen3, Cards.ggreen4, Cards.ggreen5, Cards.ggreen6,
     Cards.ggreen7, Cards.ggreen8, Cards.ggreen9, Cards.ggreenmiss, Cards.ggreenreverse, Cards.ggreen_2]

bluecards = [Cards.blue0, Cards.blue1, Cards.blue2, Cards.blue3, Cards.blue4, Cards.blue5, Cards.blue6,
     Cards.blue7, Cards.blue8, Cards.blue9, Cards.bluemiss, Cards.bluereverse, Cards.blue_2,
     Cards.bblue1, Cards.bblue2, Cards.bblue3, Cards.bblue4, Cards.bblue5, Cards.bblue6,
     Cards.bblue7, Cards.bblue8, Cards.bblue9, Cards.bbluemiss, Cards.bbluereverse, Cards.bblue_2]

redcards = [Cards.red0, Cards.red1, Cards.red2, Cards.red3, Cards.red4, Cards.red5, Cards.red6,
     Cards.red7, Cards.red8, Cards.red9, Cards.redmiss, Cards.redreverse, Cards.red_2,
     Cards.rred1, Cards.rred2, Cards.rred3, Cards.rred4, Cards.rred5, Cards.rred6,
     Cards.rred7, Cards.rred8, Cards.rred9, Cards.rredmiss, Cards.rredreverse, Cards.rred_2]

wildcards = [Cards.wild1, Cards.wild2, Cards.wild3, Cards.wild4, Cards.wilddraw1, Cards.wilddraw2,
     Cards.wilddraw3, Cards.wilddraw4]

cards = [yellowcards,greencards,bluecards, redcards, wildcards]

不过,正如其他用户所建议的那样。尝试使用dictionary而不是列表。你知道吗

另请注意:

数组的一般定义是:

In programming, a series of objects all of which are the same size and type. Each object in an array is called an array element.

但是在python中,您使用了lists。这些列表可以具有不同类型的不同数据类型。就像

a_list = [1,2,3] #all int
b = ['s','a','d'] #all strings [Note there is no char here just str type with length 1
c = [1,2,3,'a','s',a_list] #mixed list

全部有效。记住这个。你知道吗

您应该使用dictionary

cards = {"yellowcards" : [Cards.yellow0, Cards.yellow1, Cards.yellow2, Cards.yellow3, Cards.yellow4, Cards.yellow5, Cards.yellow6,
         Cards.yellow7, Cards.yellow8, Cards.yellow9, Cards.yellowmiss, Cards.yellowreverse, Cards.yellow_2,
         Cards.yyellow1, Cards.yyellow2, Cards.yyellow3, Cards.yyellow4, Cards.yyellow5, Cards.yyellow6,
         Cards.yyellow7, Cards.yyellow8, Cards.yyellow9, Cards.yyellowmiss, Cards.yyellowreverse, Cards.yyellow_2],
         "greencards" : [Cards.green0, Cards.green1, Cards.green2, Cards.green3, Cards.green4, Cards.green5, Cards.green6,
         Cards.green7, Cards.green8, Cards.green9, Cards.greenmiss, Cards.greenreverse, Cards.green_2,
         Cards.ggreen1, Cards.ggreen2, Cards.ggreen3, Cards.ggreen4, Cards.ggreen5, Cards.ggreen6,
         Cards.ggreen7, Cards.ggreen8, Cards.ggreen9, Cards.ggreenmiss, Cards.ggreenreverse, Cards.ggreen_2],
         "bluecards" : [Cards.blue0, Cards.blue1, Cards.blue2, Cards.blue3, Cards.blue4, Cards.blue5, Cards.blue6,
         Cards.blue7, Cards.blue8, Cards.blue9, Cards.bluemiss, Cards.bluereverse, Cards.blue_2,
         Cards.bblue1, Cards.bblue2, Cards.bblue3, Cards.bblue4, Cards.bblue5, Cards.bblue6,
         Cards.bblue7, Cards.bblue8, Cards.bblue9, Cards.bbluemiss, Cards.bbluereverse, Cards.bblue_2],
         "redcards" : [Cards.red0, Cards.red1, Cards.red2, Cards.red3, Cards.red4, Cards.red5, Cards.red6,
         Cards.red7, Cards.red8, Cards.red9, Cards.redmiss, Cards.redreverse, Cards.red_2,
         Cards.rred1, Cards.rred2, Cards.rred3, Cards.rred4, Cards.rred5, Cards.rred6,
         Cards.rred7, Cards.rred8, Cards.rred9, Cards.rredmiss, Cards.rredreverse, Cards.rred_2],
         "wildcards" : [Cards.wild1, Cards.wild2, Cards.wild3, Cards.wild4, Cards.wilddraw1, Cards.wilddraw2,
         Cards.wilddraw3, Cards.wilddraw4]}

所以你可以像这样访问每一种颜色。你知道吗

cars["yellowcards"]

输出

[Cards.yellow0, Cards.yellow1, Cards.yellow2, Cards.yellow3, Cards.yellow4, Cards.yellow5, Cards.yellow6,
         Cards.yellow7, Cards.yellow8, Cards.yellow9, Cards.yellowmiss, Cards.yellowreverse, Cards.yellow_2,
         Cards.yyellow1, Cards.yyellow2, Cards.yyellow3, Cards.yyellow4, Cards.yyellow5, Cards.yyellow6,
         Cards.yyellow7, Cards.yyellow8, Cards.yyellow9, Cards.yyellowmiss, Cards.yyellowreverse, Cards.yyellow_2]

相关问题 更多 >