python negation

Negación en Python



subplot title python (4)

Estoy tratando de crear un directorio si la ruta no existe, pero el! (no) el operador no funciona. No estoy seguro de cómo negarme en Python ... ¿Cuál es la forma correcta de hacer esto?

if (!os.path.exists("/usr/share/sounds/blues")): proc = subprocess.Popen(["mkdir", "/usr/share/sounds/blues"]) proc.wait()


Combinando la entrada de todos los demás (use no, no parens, use os.mkdir ) obtendrá ...

specialpathforjohn = "/usr/share/sounds/blues" if not os.path.exists(specialpathforjohn): os.mkdir(specialpathforjohn)


El operador de negación en Python not es. Por lo tanto, solo reemplaza tu ! con not .

Para su ejemplo, haga esto:

if not os.path.exists("/usr/share/sounds/blues") : proc = subprocess.Popen(["mkdir", "/usr/share/sounds/blues"]) proc.wait()

Para su ejemplo específico (como dijo Neil en los comentarios), no tiene que usar el módulo de subprocess , simplemente puede usar os.mkdir() para obtener el resultado que necesita, con una bondad de manejo de excepciones adicional.

Ejemplo:

blues_sounds_path = "/usr/share/sounds/blues" if not os.path.exists(blues_sounds_path): try: os.mkdir(blues_sounds_path) except OSError: # Handle the case where the directory could not be created.


Python prefiere las palabras clave en inglés a la puntuación. Use not x , es decir, not os.path.exists(...) . Lo mismo ocurre con && y || que son and y or en Python.


prueba en su lugar:

if not os.path.exists(pathName): do this