come ottengo il nome della directory del file che viene eseguito, anche quando sto eseguendo il file da fuori della sua directory?

non sto cercando os.getcwd(), dal momento che sembra restituire la posizione al momento in cui si sta eseguendo lo script.

se sono in /Users/jo/Documents/, ed eseguo lo script: /Users/scripts/python/myScript.py, cosa posso eseguire dall’interno del mio script, per verificare che /Users/scripts/python/siblingScript.py esista?

così stavo pensando che avrei ottenuto il nome della directory del file che viene eseguito prima, e poi chiamare (...).exists("siblingScript.py") su di esso.

come avrei ottenuto questo giusto?

EN From: How do I get the directory name of the file that’s being executed, even when I’m executing the file from outside of it’s directory?

More similar articles:

1 Comment

  1. i dettagli sono un po ‘diversi a seconda che si sta eseguendo /Users/scripts/python/myScript.py dal suo nome percorso completo o da un percorso relativo. ma in ogni caso potete usare le funzioni in os.path. probabilmente si desidera isfile() piuttosto che exists().

    >>> import os.path
    >>> p = os.path.dirname("/Users/scripts/python/myScript.py")
    >>> p
    '/Users/scripts/python'
    >>> f = os.path.join(p, "siblingScript.py")
    >>> f
    '/Users/scripts/python/siblingScript.py'
    >>> os.path.isfile(f)
    True

    se si esegue myScript.py con un percorso relativo, utilizzare abspath ().

    >>> os.getcwd()
    '/home/msherrill/test/Users/jo/Documents'
    >>> p = os.path.dirname("../../scripts/python/myScript.py")
    >>> p
    '../../scripts/python'
    >>> os.path.abspath(p)
    '/home/msherrill/test/Users/scripts/python'

    si dovrebbe leggere la documentazione di Python os.path specifica per la versione di Python. ci sono alcune applicazioni specifiche, dettagli sottili.

Leave a Reply

Your email address will not be published. Required fields are marked *