2016-07-09 24 views
-1

Ich bin ein Bot für einen Chatraum auf Chatango, ich streame einige Sachen und ich möchte eine Playlist hinzufügen, so dass die Benutzer sagen können "! Add seinfeld.mov" oder was auch immer und es wird hinzugefügt Wenn die Datei nicht vorhanden ist, wird sie der Wiedergabeliste mitgeteilt. Wenn sie gefunden wird, wird sie zur Wiedergabeliste hinzugefügt.Datei nach Name suchen

if cmd == "add": 
    if os.chdir("C:\Media") and file.name == (args): 
     print('vodka!') 
    else: 
     print('nope') 

Alle erforderlichen Abhängigkeiten importiert werden, wenn ich für eine Datei scannen, die es gibt, druckt er nope.

+0

auch, ich weiß nicht, wie man die Code-Block-Sache seit seiner komplizierten hier im Vergleich zu anderen Forum: /// Syntax ist in Ordnung. – Mzon

+0

Bitte zeigen Sie mehr von Ihrem Code und erklären Sie, was genau Sie erreichen möchten. – Will

+0

Ich kodiere einen Bot für einen Chatraum auf Chatango, ich streame ein paar Sachen und ich möchte eine Playlist hinzufügen, damit die Benutzer sagen können "! Add seinfeld.mov" oder was auch immer und es wird zur Playlist hinzugefügt, wenn die datei existiert nicht, es wird ihnen sagen, nein, wenn sie es findet, wird sie es der playliste hinzufügen. – Mzon

Antwort

0

Lassen Sie uns zunächst eine Funktion, um die Datei zu finden, mit os.walk:

import os 

def find_file(in_path, name): 
    for root, directories, filenames in os.walk(in_path): 
     if not filenames: 
      continue 

     for filename in filenames: 
      if filename == name: 
       return os.path.join(root, filename) 

    return None 

Dann können wir tun:

if cmd == "add": 
    if find_file("C:\\Media", args) is not None: 
     print('vodka!') 
    else: 
     print('nope') 

Dies wird die Datei tatsächlich rekursiv finden, unter einem beliebigen Verzeichnis in C:\Media und gib den Pfad dorthin zurück, wo er ist.

+0

Fest, danke! Es funktioniert auf beide Weise auf meinem System, aber es zu entkommen ist besser. – Will

1

Sie müssen nur sehen, ob die Datei in C:\Media ist (denken Sie daran, den Schrägstrich zu entkommen). Sie können os.listdir() verwenden.