Python将list中的一个元素分配给循环中另一个list中的每个元素

2024-09-27 07:34:26 发布

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

我试图对一些文件进行排序,首先在dir中找到文件名,例如glob.glob(filename1,filename2,filename3),所以我得到了这个文件列表[(filename1,),(filename2,),(filename3,)]

在此之后,我有一个for循环,它用.readline()从每个文件中提取一个字符串。所以在每个循环执行之后,filename1打印10个字符串,下一个循环filename2打印3个字符串,下一个循环filename3打印5个字符串。你知道吗

loop
[string1]
[string2]
[string3]
.....
loop
[string1]
[string2]
[string3]
....
loop
[string1]
[string2]
[string3]
....

问题是,我知道这10个字符串来自filename1,但我想指出它们确实来自filename1。你知道吗

    How i would like it to look after print 
loop
[filename1 , string1]
[filename1 , string2]
[filename1 , string3]
    .......
new loop   
[filename2 , string1]
[filename2 , string2]
[filename2 , string3]
    .......
new loop
[filename3 , string1]
[filename3 , string2]
[filename3 , string3]

有人能帮我或送我到正确的方向吗?我搜索了“将一个列表分配给另一个列表中的元素”和类似的标签,但是找不到我需要的。。。谢谢你的帮助!你知道吗

编辑

    with open (filename) as filesearch:
            filesearch = filesearch.readlines()
# ---------- Loop 1 for filename and filedate-----------------------------------
    for line in filesearch:
            if createdate in line:  # extract "Create Time"
                date = []
                file = []
                file.append(filename[42:])
                #print(file)
                date.append(line[15:])    # store all found filedates in array
                #print(date)
                list_logfile = list(zip(file,date))
                #print(list_logfile)


# ---------- Loop 2 for finding string ------------------------------------------------------
    for line in filesearch:
            if tester in line:  # extract "Sending Request: Tester"
                data = []
                message = []
                start = '-> '   # take string from
                end = ':\ '     # ens string at
                number = line[line.find(start) + 3: line.find(end)]  # [ord('-> '):ord(' :\ ')]
                data.append(number)  # store all found tester in a array
                text = line[line.find(end) + 3:]
                message.append(text)    # store all found comments in a array
                print(data)

    down here i want to append the first file filename1 to the frist loop of strings , 
then append filename2 with the next loop of strings, 
then the next and next...

Tags: 字符串inloopforlinefileprintappend

热门问题