我的代码目前写成:
convert = {0:0,1:1,2:2,3:3,4:0,5:1,6:2,7:1}
rows = [[convert[random.randint(0,7)] for _ in range(5)] for _ in range(5)]
numgood = 25 - rows.count(0)
print numgood
>> 25
Run Code Online (Sandbox Code Playgroud)
它总是以 25 的形式出现,所以不仅仅是行不包含 0。
我很好奇这样的事情是否可行:
print "lajsdflk"+ (if x>1:"123123";else:"0000000") +"!@#"
Run Code Online (Sandbox Code Playgroud)
不是专门打印,而是任何带数字的功能; 另一个例子:
print 596* (if statementX: 6545; else: 9874) /63
Run Code Online (Sandbox Code Playgroud)
如果可能的话,我想把它保持在一条线上.
目前要分配我的变量,我有这个:
rows = [[convert[random.randint(0,7)] for _ in range(5)] for _ in range(5)]
printedrows = [("[X]","[X]","[X]","[X]","[X]"," <- V: {} TOTAL: {}".format(row.count(0), sum(row))) for row in rows]
Run Code Online (Sandbox Code Playgroud)
这将创建5行随机值:
('[X]', '[X]', '[X]', '[X]', '[X]', ' <- V: 1 TOTAL: 9')
('[X]', '[X]', '[X]', '[X]', '[X]', ' <- V: 2 TOTAL: 5')
('[X]', '[X]', '[X]', '[X]', '[X]', ' <- V: 0 TOTAL: 6')
('[X]', '[X]', '[X]', '[X]', '[X]', ' <- V: 1 TOTAL: 10')
('[X]', '[X]', '[X]', '[X]', '[X]', ' <- V: 0 TOTAL: …Run Code Online (Sandbox Code Playgroud)