Я очень новичок в Python, но я думал, что было бы интересно сделать программу для сортировки всех моих загрузок, но у меня с ней немного проблемы. Он отлично работает, если у моего адресата есть только одно слово, но если у адресата есть два слова или более, это происходит неправильно, и программа застревает в цикле. Есть ли у кого-нибудь идея сравнить списки, чем я?Python Сравнение двух списков строк для сходства
>>>for i in dstdir:
>>> print i.split()
['CALIFORNICATION']
['THAT', "'70S", 'SHOW']
['THE', 'BIG', 'BANG', 'THEORY']
['THE', 'OFFICE']
['DEXTER']
['SPAWN']
['SCRUBS']
['BETTER', 'OF', 'TED']
>>>for i in dstdir:
>>> print i.split()
['Brooklyn.Nine-Nine.S01E16.REAL.HDTV.x264-EXCELLENCE.mp4']
['Revolution', '2012', 'S02E12', 'HDTV', 'x264-LOL[ettv]']]
['Inequality', 'for', 'All', '(2013)', '[1080p]']
Это пример вывода списков.
У меня есть целевой каталог с только папками в нем и каталогом загрузки. Я хочу, чтобы программа автоматически просматривала имя исходного файла, а затем просматривала имя получателя. если имя получателя находится в имени источника, тогда у меня есть да, чтобы продолжить и скопировать загруженный файл, чтобы он был отсортирован в моей коллекции.
destination = '/media/mediacenter/SAMSUNG/SERIES/'
source = '/home/mediacenter/Downloads/'
dstdir = os.listdir(destination)
srcdir = os.listdir(source)
for i in srcdir:
source = list(i.split())
for j in dstdir:
count = 0
succes = 0
destination = list(j.split())
if len(destination) == 1:
while (count < len(source)):
if destination[0].upper() == source[count].upper():
print 'succes ', destination, ' ', source
count = count + 1
elif len(destination) == 2:
while(count < len(source)):
if (destination[0].upper() == source[count].upper()):
succes = succes + 1
count = len(source)
count = 0
while(count < len(source)):
if (destination[1].upper() == source[count].upper()):
succes = succes + 1
count = len(source)
count = 0
if succes == 2:
print 'succes ', destination, ' ', source
На данный момент я доволен только «успехом» в качестве выхода; Я выясню, как копировать файлы, так как для меня будет совсем другая проблема в ближайшем будущем.
Вы должны объяснить, что вы пытаетесь сделать, возможно, с примером того, что вы получаете от своей программы и чего вы ожидаете получить. – hivert