Domanda

Sto cercando di lavorare con alcuni percorsi di file lunghi (Windows) in Python e ho incontrato alcuni problemi. Dopo aver letto la domanda qui , sembra che ho bisogno di aggiungere '\\? \' verso la parte anteriore dei miei percorsi di file lunghi, al fine di utilizzarli con os.stat (percorsofile). Il problema che sto avendo è che non riesco a creare una stringa in Python, che termina con una barra rovesciata. La domanda qui sottolinea che non si può anche finire stringhe in Python con un singolo carattere '\'.

C'è qualcosa in una delle librerie standard di Python o in qualsiasi altro che consente di accodare semplicemente '\\? \' Verso la parte anteriore di un percorso di file avete già? O c'è qualche altro lavoro in giro per lavorare con i percorsi di file lunghi in Windows con Python? Sembra una cosa così semplice da fare, ma non riesco a capire per la vita di me.

È stato utile?

Soluzione

"\\\\? \\" dovrebbe darvi esattamente la stringa che si desidera.

Più rispondere: ovviamente si può finire una stringa in Python con una barra inversa. Non ci si può fare in modo che quando si tratta di una stringa "raw" (uno preceduti da una 'r'). Che di solito si usa per le stringhe che contiene (un sacco di) backslash (per evitare la sindrome del famigerato "appoggiato stecchino"; -))

Altri suggerimenti

Anche con una corda grezzo, si può finire in un backslash con:

>>> print r'\\?\D:\Blah' + '\\'
\\?\D:\Blah\

o anche:

>>> print r'\\?\D:\Blah' '\\'
\\?\D:\Blah\

dal momento che concatena Python per le stringhe letterali in una sola.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top