从列表中的列表中打印值

时间:2016-02-19 19:34:40

标签: list python-2.7

我在python中有这段代码:

sensor16=['1','-','\\','/','*','!']
sensor15=['4','G','H','I']
sensor14=['7','P','Q','R','S']
sensor13=['*']
sensor12=['2','A','B','C']
sensor11=['5','J','K','L']
sensor10=['8','T','U','V']
sensor09=['0',' ']
sensor08=['3','D','E','F']
sensor07=['6','M','N','O']
sensor06=['9','W','X','Y','Z']
sensor05=['#']
sensor04=['BACKSPACE']
sensor03=['DELETE ALL']
sensor02=['READ']
sensor01=['TRANSMITE']
sensor= [sensor01,sensor02,sensor03,sensor04,sensor05,sensor06,sensor07,sensor08,sensor09,sensor10,sensor11,sensor12,sensor13,sensor14,sensor15,sensor16]
press=[1,1,1,1,1,5,4,4,2,4,4,4,1,5,4]
num_press=0


for steps in range(15) :
    sensor[steps]
    num_press=press[steps]
    for i in range(num_press) :
        print(sensor[steps][num_press])

如何访问每个sensorXX列表中与[]列表中的值对应的值?

例如press[9]4,因此我想打印sensor10[4] V

我必须通过按[]列表的原因是我已经设法获得一些计时功能所以我知道自上次按下以来经过了多少时间,所以我可以打印出特定传感器内的下一个字符数字列表(例如sensor01 []或传感器[12]),当我达到最大按数量以重新循环或我必须将光标向右移动一个位置并从开始开始。

我已经在arduino中构建和运行但代码在C中。现在我想将所有内容移动到我的raspberry pi 2和python中。

这是第一个想法来自的地方,我实际上在arduino中使用了大部分代码。 youtube video for arduino use of my code arduino code

2 个答案:

答案 0 :(得分:0)

我运行了你的代码并使索引超出范围错误。看起来你只有一个错误。试试这个:(也删除你的嵌套for循环似乎是一个错误)

for steps in range(15) :
    sensor[steps]
    num_press=press[steps]
    print (sensor[steps]) [num_press-1]

输出:

TRANSMITE
READ
DELETE ALL
BACKSPACE
#
Z
O
F

V
L
C
*
S
I

答案 1 :(得分:0)

DOOOOONE!谢谢你们的回应! :d

sensor16=['1','-','\\','/','*','!']
sensor15=['4','G','H','I']
sensor14=['7','P','Q','R','S']
sensor13=['*']
sensor12=['2','A','B','C']
sensor11=['5','J','K','L']
sensor10=['8','T','U','V']
sensor09=['0',' ']
sensor08=['3','D','E','F']
sensor07=['6','M','N','O']
sensor06=['9','W','X','Y','Z']
sensor05=['#']
sensor04=['BACKSPACE']
sensor03=['DELETE ALL']
sensor02=['READ']
sensor01=['TRANSMITE']
sensor=[sensor01,sensor02,sensor03,sensor04,sensor05,sensor06,sensor07,sensor08,sensor09,sensor10,sensor11,sensor12,sensor13,sensor14,sensor15,sensor16]
press=[1,1,1,1,1,5,4,4,2,4,4,4,1,5,4]
num_press=0
steps=0

for steps in range (15):
    for i in range (press[steps]):
        print (sensor[steps][i])

它会单独转到每个值。

再来一次!非常感谢....