0

私はPythonが初めてで、リストのリストを処理しようとしています。

私が持っているとしましょう:

myList = [[1,2,3,4],[10,11,12,13],[29,28,27,26]]

および myFunction という関数

私は書くことができます:

for x in myList:
   for y in x:
     myFunction(y)

ただし、それはすべてのサブリストの個々の項目で myFunction を呼び出すだけです。各サブリストのすべての項目を終了するときにも呼び出すことができるものを組み込むにはどうすればよいですか (たとえば、1、2、3、および 4 を呼び出すと、ループはそれがサブリストの最後にあることを認識し、そのサブリストを呼び出します)。

本当にありがとう!

4

3 に答える 3

1

John、それは のインデントされた構文ですがPython、インデントされている間はコードのブロックです。つまり、すべてのコマンドはパック (ブロック内) にあります。

for x in myList:
    # block of code started
    for y in x:
        # here is new block
        # some here will be called totally "all elements in all sublists" times
        # i.e. "number of elements in x" times 
        # per "number of sublist in myList" times
        # and here will be called the same number of times (it is block)
    # here you're out of "for y in x" loop now (you're in previous block)
    # some here will be called "myList" number of times 
    # and here
# here you are out of "for x in myList" loop
于 2013-08-27T15:23:51.633 に答える
0

これがあなたが望むものであることを願っています:

def myFunction(y):
    print y

myList = [[1,2,3,4],[10,11,12,13],[29,28,27,26]]

for x in range(len(myList)):
   print "Sublist:",x, myList[x]
   for y in myList[x]:
     myFunction(y)
于 2013-08-27T15:11:44.557 に答える