溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python 獲取windows桌面路徑的5種方法小結(jié)

發(fā)布時(shí)間:2020-08-24 16:27:42 來源:腳本之家 閱讀:411 作者:jwensh 欄目:開發(fā)技術(shù)

這里介紹了5中python獲取window桌面路徑的方法,獲取這個(gè)路徑有什么用呢?一般是將程序生成的文檔輸出到桌面便于查看編輯。

前兩個(gè)方法是通過注冊(cè)表來獲取當(dāng)前windows桌面絕對(duì)路徑,比較推薦使用第一個(gè),因?yàn)椴恍枰惭b額外的擴(kuò)展,其他的可以了解下

1.用內(nèi)置的winreg(推薦)

import _winreg
def get_desktop():
  key = _winreg.OpenKey(_winreg.HKEY_CURRENT_USER,r'Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders')
  return _winreg.QueryValueEx(key, "Desktop")[0]

2.win32擴(kuò)展(需要安裝第三方庫)

import win32api,win32con
def get_desktop():
  key =win32api.RegOpenKey(win32con.HKEY_CURRENT_USER,r'Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders',0,win32con.KEY_READ)
  return win32api.RegQueryValueEx(key,'Desktop')[0]

3.也需要win32擴(kuò)展

from win32com.shell import shell, shellcon
def GetDesktopPath():
  ilist =shell.SHGetSpecialFolderLocation(0, shellcon.CSIDL_DESKTOP)
  return shell.SHGetPathFromIDList(ilist)

4.python內(nèi)置的os庫的path模塊

這個(gè)方法在用戶改變了桌面路徑后,可能會(huì)失效。

import os
def GetDesktopPath():
  return os.path.join(os.path.expanduser("~"), 'Desktop')

5.使用socket模塊(不推薦)

當(dāng)然這個(gè)方法,是獲取當(dāng)前pc的主機(jī)名,一般情況下,windows系統(tǒng)啟用第一次開始時(shí)會(huì)設(shè)置一個(gè)電腦名,這個(gè)電腦名會(huì)出現(xiàn)在C盤下的用戶目錄下,比如我的電腦名是‘jayzhen',那么會(huì)有一個(gè)目錄路徑:C:\Users\jayzhen,這時(shí)候我的桌面路徑就是:C:\Users\jayzhen\Desktop(問題就是如果你隨后修改了電腦名,這個(gè)方法就不生效了),代碼表現(xiàn)的跟第四種很像

import socket, os
def GetDesktopPath()
 hostname = socket.gethostname()  #socket.getfqdn(socket.gethostname()) 
 basepath = os.path.join("C:\Users\",hostname ) 
 return os.path.join(basepath, 'Desktop')

以上這篇Python 獲取windows桌面路徑的5種方法小結(jié)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持億速云。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI