development

파이썬에서의 부정

big-blog 2020. 6. 28. 17:41
반응형

파이썬에서의 부정


경로가 존재하지 않으면 디렉토리를 만들려고하는데! 연산자가 작동하지 않습니다. 파이썬에서 부정하는 법을 잘 모르겠습니다 ... 올바른 방법은 무엇입니까?

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

파이썬의 부정 연산자는 not입니다. 따라서 당신의 교체 !와 함께 not.

예를 들어 다음과 같이하십시오.

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

Neil이 주석에서 말한 것처럼 특정 예제의 경우 subprocess모듈 을 사용할 os.mkdir()필요가 없으며 예외 처리 기능이 추가되어 필요한 결과를 얻는 데 사용할 수 있습니다 .

예:

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.

파이썬은 영어 키워드를 구두점보다 선호합니다. not x즉을 사용하십시오 not os.path.exists(...). 같은 일이 간다 &&하고 ||있는 있습니다 andor파이썬한다.


대신 시도하십시오 :

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

다른 사람들의 의견을 합치면 (파란 스를 사용하지 말고 사용하십시오 os.mkdir) ...

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

참고 URL : https://stackoverflow.com/questions/6117733/negation-in-python

반응형