Python 获取windows桌面路径的5种方法小结


Posted in Python onJuly 15, 2019

这里介绍了5中python获取window桌面路径的方法,获取这个路径有什么用呢?一般是将程序生成的文档输出到桌面便于查看编辑。

前两个方法是通过注册表来获取当前windows桌面绝对路径,比较推荐使用第一个,因为不需要安装额外的扩展,其他的可以了解下

1.用内置的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扩展(需要安装第三方库)

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扩展

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

4.python内置的os库的path模块

这个方法在用户改变了桌面路径后,可能会失效。

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

5.使用socket模块(不推荐)

当然这个方法,是获取当前pc的主机名,一般情况下,windows系统启用第一次开始时会设置一个电脑名,这个电脑名会出现在C盘下的用户目录下,比如我的电脑名是‘jayzhen',那么会有一个目录路径:C:\Users\jayzhen,这时候我的桌面路径就是:C:\Users\jayzhen\Desktop(问题就是如果你随后修改了电脑名,这个方法就不生效了),代码表现的跟第四种很像

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种方法小结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中下划线的使用方法
Mar 27 Python
python实现k-means聚类算法
Feb 23 Python
使用Python从零开始撸一个区块链
Mar 14 Python
python3第三方爬虫库BeautifulSoup4安装教程
Jun 19 Python
详解python校验SQL脚本命名规则
Mar 22 Python
django框架模板中定义变量(set variable in django template)的方法分析
Jun 24 Python
如何用Python破解wifi密码过程详解
Jul 12 Python
在Tensorflow中查看权重的实现
Jan 24 Python
Python数组拼接np.concatenate实现过程
Apr 18 Python
python实现单机五子棋
Aug 28 Python
python查询MySQL将数据写入Excel
Oct 29 Python
PyCharm2020.3.2安装超详细教程
Feb 08 Python
Python识别快递条形码及Tesseract-OCR使用详解
Jul 15 #Python
Python实现Mysql数据统计及numpy统计函数
Jul 15 #Python
通过python改变图片特定区域的颜色详解
Jul 15 #Python
用Python+OpenCV对比图像质量的几种方法
Jul 15 #Python
python3实现斐波那契数列(4种方法)
Jul 15 #Python
为什么从Python 3.6开始字典有序并效率更高
Jul 15 #Python
django settings.py 配置文件及介绍
Jul 15 #Python
You might like
使用PHP和XSL stylesheets转换XML文档
2006/10/09 PHP
PHP开发中常用的8个小技巧
2008/08/27 PHP
php警告Creating default object from empty value 问题的解决方法
2014/04/02 PHP
音乐播放用的的几个函数
2006/09/07 Javascript
限制文本框输入N个字符的js代码
2010/05/13 Javascript
js网页侧边随页面滚动广告效果实现
2011/04/14 Javascript
javascript创建含数字字母的随机字符串方法总结
2016/08/01 Javascript
jQuery ajax的功能实现方法详解
2017/01/06 Javascript
angularjs实现分页和搜索功能
2018/01/03 Javascript
一步步教你利用Docker设置Node.js
2018/11/20 Javascript
nodeJS进程管理器pm2的使用
2019/01/09 NodeJs
Vue触发隐藏input file的方法实例详解
2019/08/14 Javascript
Python实现将DOC文档转换为PDF的方法
2015/07/25 Python
Django应用程序中如何发送电子邮件详解
2017/02/04 Python
python使用os.listdir和os.walk获得文件的路径的方法
2017/12/16 Python
python代码实现ID3决策树算法
2017/12/20 Python
Python3非对称加密算法RSA实例详解
2018/12/06 Python
Python的bit_length函数来二进制的位数方法
2019/08/27 Python
Python 过滤错误log并导出的实例
2019/12/26 Python
Python处理PDF与CDF实例
2020/02/26 Python
CSS3制作漂亮的照片墙的实现代码
2016/06/08 HTML / CSS
HTML5仿手机微信聊天界面
2016/03/18 HTML / CSS
Abe’s of Maine:自1979以来销售相机和电子产品
2016/11/21 全球购物
英国领先的狗和宠物美容专家:Christies Direct
2017/04/03 全球购物
YSL Beauty加拿大官方商城:圣罗兰美妆加拿大
2017/05/15 全球购物
美国领先的商务贺卡出版商:The Gallery Collection
2018/02/13 全球购物
eBay荷兰购物网站:eBay.nl
2020/06/26 全球购物
幼儿园春游活动方案
2014/01/19 职场文书
2014社区三八妇女节活动总结
2014/03/01 职场文书
益达广告词
2014/03/14 职场文书
不拖欠农民工工资承诺书
2014/03/31 职场文书
交通事故赔偿协议书范本
2014/04/15 职场文书
垃圾桶标语
2014/06/24 职场文书
2014年节能降耗工作总结
2014/12/11 职场文书
新手,如何业余时间安排好写作、提高写作能力?
2019/10/21 职场文书
话题作文之财富(600字)
2019/12/03 职场文书