Dodawanie zmiennej do ścieżki.

0

Hej. Napisałem sobie prościutki program w pythonie do sprawdzanie czegoś, do czego wymagana jest ścieżka. Przykładowo, wypisze co znajduje się na Pulpicie. Wszystko ładnie, ale co zrobić, żeby działało to na wszystkich kompach z windowsem. Zrobiłem coś takiego, żeby zczytać nazwę usera, która jest obowiązkowa w ścieżce.

import os
nazwausera = getpass.getuser()
sciezka = 'C:/Users/nazwausera/Desktop'
os.listdir(sciezka)

Ale niestety mam błąd - Wystąpił wyjątek: FileNotFoundError
[WinError 3] System nie może odnaleźć określonej ścieżki: 'C:/Users/nazwausera/Desktop' . Wie ktoś, co może być źle, lub jak w ogóle napisać taki program(wiem, że mój sposób jest prawdopodobnie zły). Z góry dziękuję.

4

Jeśli chcesz uzyskać dostęp do ścieżki pulpitu na każdym windowsie to proponuję użyć windowsapi:

from win32com.shell import shell, shellcon
print shell.SHGetFolderPath(0, shellcon.CSIDL_DESKTOP, None, 0)

Tu masz wszystkie dostępne:
https://docs.microsoft.com/en-us/windows/win32/shell/csidl
a tu opis funkcji:
https://docs.microsoft.com/pl-pl/windows/win32/api/shlobj_core/nf-shlobj_core-shgetfolderpatha?redirectedfrom=MSDN

0

O, dziękuję bardzo, na pewno pomoże. Zaraz skompiluje. Masz łapkę :).

2

a ogólnie Tobie nie zadziałało bo powinno to być mniej więcej tak:

import os
nazwausera = getpass.getuser()
sciezka = 'C:/Users/'+nazwausera+'/Desktop'
os.listdir(sciezka)

1 użytkowników online, w tym zalogowanych: 0, gości: 1