-7

2 つの関数をより大きな関数にネストして、関数がファイルを開いて読み取り、結果を出力するのに苦労しています。エラーはありませんが、結果は のように表示されNoneます。コードを改善する方法を教えてください。前もって感謝します!

import glob

#Read a result file and return a list
def read_results(filename):
    text_file=open(filename,"r")
    lines=text_file.readlines()
    return lines
    text_file.close()

#Give a list of results files in your directory    
def get_filename():
    filelist=glob.glob("./Data/*.*")
    return filelist

#Call above functions to get file names and read each file
def read_lines(filename):
    def get_filename()
        def read_results(): 
            print lines   

#main
function=read_results("./Data/GSM21203-GSM21215.csv")
print"\nHere's the lines of the text file:", function

#In order to use the strip method, it must be a str. Currently I am not using a         string.     Figure out how to do it

print"\n"

list_of_filenames=get_filename()
print"Here are the list of filenames:",list_of_filenames

read_each_file=read_lines("*.*")
print "Here are the contents of each file",read_each_file
4

1 に答える 1

4

これをどのように行っているかを完全に再考する必要があります。あなたのコードは、関数が Python でどのように機能するかを理解していないことを示しているようです。たとえば、これは次のとおりです。

def read_lines(filename):
    def get_filename()
        def read_results(): 
            print lines   

. . . 3 つの関数を作成しますが、それらのいずれも呼び出しません。

最初に Python チュートリアルを読んでください。

于 2012-07-12T18:59:07.380 に答える