最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python操作注冊表的方法實現(xiàn)

 更新時間:2023年08月29日 11:19:01   作者:SteveRocket  
Python提供了winreg模塊,可以用于操作Windows注冊表,本文就來介紹一下python操作注冊表的方法實現(xiàn),主要包括打開注冊表、讀取注冊表值、寫入注冊表值和關(guān)閉注冊表,具有一定的參考價值,感興趣的可以了解一下

 在Windows操作系統(tǒng)中,注冊表是一個重要的系統(tǒng)組件,它存儲了系統(tǒng)和應(yīng)用程序的配置信息。Python提供了winreg模塊,可以用于操作Windows注冊表。本文將介紹如何使用Python操作注冊表,并介紹一些應(yīng)用場景

1. 導(dǎo)入winreg模塊

在使用winreg模塊之前,我們需要先導(dǎo)入該模塊。可以使用以下代碼導(dǎo)入winreg模塊:

import winreg

2. 打開注冊表

可以使用winreg模塊的OpenKey()方法打開注冊表。該方法的參數(shù)是一個表示注冊表項的句柄和一個表示要打開的子項的名稱的字符串。如果要打開的子項不存在,將會拋出一個WindowsError異常。下面是打開注冊表的示例代碼:

import winreg
# 打開HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer鍵
key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, r'Software\Microsoft\Windows\CurrentVersion\Explorer')

在上面的代碼中,我們首先使用winreg.HKEY_CURRENT_USER常量表示HKEY_CURRENT_USER根鍵。然后使用winreg.OpenKey()方法打開注冊表項Software\Microsoft\Windows\CurrentVersion\Explorer,并將結(jié)果保存在變量key中。

3. 讀取注冊表值

可以使用winreg模塊的QueryValue()方法讀取注冊表值。該方法的參數(shù)是一個表示注冊表項的句柄和一個表示要讀取的值的名稱的字符串。如果要讀取的值不存在,將會拋出一個WindowsError異常。

下面是讀取注冊表值的示例代碼:

import winreg
# 打開HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer鍵
key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, r'Software\Microsoft\Windows\CurrentVersion\Explorer')
# 讀取StartPage鍵的值
value = winreg.QueryValue(key, 'StartPage')
print(value)

在上面的代碼中,我們首先使用winreg.OpenKey()方法打開注冊表項Software\Microsoft\Windows\CurrentVersion\Explorer,并將結(jié)果保存在變量key中。然后使用winreg.QueryValue()方法讀取StartPage鍵的值,并將結(jié)果保存在變量value中。最后打印value的值。

4. 寫入注冊表值

可以使用winreg模塊的SetValue()方法寫入注冊表值。該方法的參數(shù)是一個表示注冊表項的句柄、一個表示要寫入的值的名稱的字符串和一個表示要寫入的值的類型的常量。如果要寫入的值已存在,將會覆蓋原有的值。

下面是寫入注冊表值的示例代碼:

import winreg
# 打開HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer鍵
key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, r'Software\Microsoft\Windows\CurrentVersion\Explorer', 0, winreg.KEY_WRITE)
# 寫入TestValue鍵的值
winreg.SetValue(key, 'TestValue', winreg.REG_SZ, 'Hello, World!')

在上面的代碼中,我們首先使用winreg.OpenKey()方法打開注冊表項Software\Microsoft\Windows\CurrentVersion\Explorer,并將結(jié)果保存在變量key中。然后使用winreg.SetValue()方法寫入TestValue鍵的值。需要注意的是,我們需要將要寫入的值的類型作為winreg.SetValue()方法的第三個參數(shù)傳入,并使用常量表示類型。

5. 關(guān)閉注冊表

在操作注冊表之后,我們需要關(guān)閉注冊表。可以使用winreg模塊的CloseKey()方法關(guān)閉注冊表。該方法的參數(shù)是一個表示注冊表項的句柄。

下面是關(guān)閉注冊表的示例代碼:

import winreg
# 打開HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer鍵
key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, r'Software\Microsoft\Windows\CurrentVersion\Explorer')
# 關(guān)閉注冊表
winreg.CloseKey(key)

在上面的代碼中,我們首先使用winreg.OpenKey()方法打開注冊表項Software\Microsoft\Windows\CurrentVersion\Explorer,并將結(jié)果保存在變量key中。然后使用winreg.CloseKey()方法關(guān)閉注冊表。

6. 應(yīng)用場景

Python操作注冊表的應(yīng)用場景很多,例如:

- 修改Windows系統(tǒng)設(shè)置,如修改桌面背景、修改默認(rèn)瀏覽器等;
- 配置應(yīng)用程序,如修改應(yīng)用程序的默認(rèn)設(shè)置;
- 讀取系統(tǒng)信息,如讀取系統(tǒng)啟動時間、讀取系統(tǒng)版本號等。

import _winreg
key = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE,r"SOFTWARE\Microsoft\Windows\CurrentVersion\Run")
#獲取該鍵的所有鍵值,因為沒有方法可以獲取鍵值的個數(shù),所以只能用這種方法進行遍歷
try:
    i=0
    while True:
        #EnumValue方法用來枚舉鍵值,EnumKey用來枚舉子鍵
        content = _winreg.EnumValue(key,i)
        i += 1
        print content
except WindowsError:
    pass
# 如果知道鍵的名稱,也可以直接取值
value = _winreg.QueryValueEx(key,"ABC")
print value
#創(chuàng)建新的鍵
newkey = _winreg.CreateKey(key,"hello")
#給新創(chuàng)建的鍵添加頁鍵值
_winreg.SetValueEx(newkey,"HelloNewKey",0,_winreg.REG_SZ,'this is new key content')

#將此腳本添加到注冊表啟動項
p = "C:\Users\Administrator\Desktop\main.py"
#在啟動項中添加程序啟動鍵值對 以及  頁值
path = 'python "%s"' % p
print path
env = _winreg.OpenKeyEx(_winreg.HKEY_LOCAL_MACHINE,
                        "SOFTWARE\Microsoft\Windows\CurrentVersion\Run",
                        0,
                        _winreg.KEY_SET_VALUE|_winreg.KEY_READ
                        )
print env
key = _winreg.EnumKey(env,0)#讀取Run下面的第一個鍵
print key
value = _winreg.EnumValue(env,0)#枚舉Run鍵  下面的第一個頁值
print value
value = _winreg.EnumValue(env,1)#枚舉Run鍵  下面的第二個頁值
print value
value = _winreg.EnumValue(env,2)#枚舉Run鍵  下面的第三個頁值
print value
# value = _winreg.EnumValue(env,3)#枚舉Run鍵  下面的第四個頁值   不存在則報錯
# print value
#遍歷全部的頁值如下
name_list = []
try:
    i = 0
    while True:
        name,value,type = _winreg.EnumValue(env,i)#枚舉鍵下的頁值
        name_list.append(name)
        i += 1
        print name
except WindowsError:
    pass
print name_list
if "Agent" not in name_list:
    _winreg.SetValueEx(env,"Agent",0,_winreg.REG_SZ,path)
else:
    value = _winreg.QueryValueEx(env,"Agent")
#判斷是不是存在此鍵以及鍵的內(nèi)容是否符合正常的
if "Agent" not in name_list:
    _winreg.SetValueEx(env,"Agent",0,_winreg.REG_SZ,path)
#獲取子鍵的內(nèi)容
value = _winreg.QueryValueEx(env,"Agent")
if value != path:
    _winreg.SetValueEx(env,"Agent",0,_winreg.REG_SZ,path) #如果存在此key  則會直接修改里面的value

總結(jié)

在Windows操作系統(tǒng)中,注冊表是一個重要的系統(tǒng)組件,它存儲了系統(tǒng)和應(yīng)用程序的配置信息。Python提供了winreg模塊,可以用于操作Windows注冊表??梢允褂脀inreg模塊的OpenKey()方法打開注冊表、使用QueryValue()方法讀取注冊表值、使用SetValue()方法寫入注冊表值和使用CloseKey()方法關(guān)閉注冊表。Python操作注冊表的應(yīng)用場景很多,例如修改Windows系統(tǒng)設(shè)置、配置應(yīng)用程序和讀取系統(tǒng)信息等。

到此這篇關(guān)于python操作注冊表的方法實現(xiàn)的文章就介紹到這了,更多相關(guān)python操作注冊表內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python類的繼承用法示例

    Python類的繼承用法示例

    這篇文章主要介紹了Python類的繼承用法,結(jié)合實例形式分析了Python類的定義、繼承等相關(guān)操作技巧,需要的朋友可以參考下
    2019-01-01
  • Python使用Pygame繪制時鐘

    Python使用Pygame繪制時鐘

    這篇文章主要為大家詳細(xì)介紹了Python使用Pygame繪制時鐘,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • 使用Python Tkinter創(chuàng)建文件生成工具的操作步驟

    使用Python Tkinter創(chuàng)建文件生成工具的操作步驟

    我們將使用Python的Tkinter模塊創(chuàng)建一個簡單的文件生成工具,這個工具可以用來創(chuàng)建Excel、文本、Python腳本和Word文檔等不同類型的文件,感興趣的朋友可以參考下
    2024-04-04
  • 使用Python自動化生成PPT并結(jié)合LLM生成內(nèi)容的代碼解析

    使用Python自動化生成PPT并結(jié)合LLM生成內(nèi)容的代碼解析

    PowerPoint是常用的文檔工具,但手動設(shè)計和排版耗時耗力,本文將展示如何通過 Python 自動化提取 PPT 樣式并生成新 PPT,同時結(jié)合大語言模型(LLM)生成內(nèi)容(如自我介紹文本),實現(xiàn)高效、個性化的 PPT 制作,需要的朋友可以參考下
    2025-05-05
  • Python實現(xiàn)制度轉(zhuǎn)換(貨幣,溫度,長度)

    Python實現(xiàn)制度轉(zhuǎn)換(貨幣,溫度,長度)

    這篇文章主要介紹了Python實現(xiàn)制度轉(zhuǎn)換(貨幣,溫度,長度),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • 淺談python可視化包Bokeh

    淺談python可視化包Bokeh

    這篇文章主要介紹了淺談python可視化包Bokeh,分享了相關(guān)代碼示例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-02-02
  • python科學(xué)計算之numpy——ufunc函數(shù)用法

    python科學(xué)計算之numpy——ufunc函數(shù)用法

    今天小編就為大家分享一篇python科學(xué)計算之numpy——ufunc函數(shù)用法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Django中使用session保持用戶登陸連接的例子

    Django中使用session保持用戶登陸連接的例子

    今天小編就為大家分享一篇Django中使用session保持用戶登陸連接的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • Python實現(xiàn)手繪圖效果實例分享

    Python實現(xiàn)手繪圖效果實例分享

    在本篇文章里小編給大家整理了關(guān)于Python實現(xiàn)手繪圖效果,有需要的朋友們可以學(xué)習(xí)下。
    2020-07-07
  • 利用Python字符畫生成甜心教主

    利用Python字符畫生成甜心教主

    字符畫是一系列字符的組合,我們可以把字符看作是比較大塊的像素,一個字符能表現(xiàn)一種顏色,字符的種類越多,可以表現(xiàn)的顏色也越多,圖片也會更有層次感。?本文將利用Python字符畫繪制一個甜心教主王心凌,需要的可以參考一下
    2022-05-05

最新評論

怀安县| 河南省| 和林格尔县| 乌什县| 达拉特旗| 双江| 汉沽区| 佛坪县| 成武县| 湄潭县| 洮南市| 胶州市| 城固县| 依安县| 闸北区| 淮阳县| 稻城县| 林芝县| 扎赉特旗| 恩平市| 长武县| 隆化县| 东光县| 五寨县| 高密市| 深泽县| 巍山| 白河县| 克什克腾旗| 乐山市| 金沙县| 五指山市| 什邡市| 阿瓦提县| 郓城县| 昔阳县| 宣恩县| 邯郸县| 连江县| 伊春市| 湖北省|