python利用winreg生成桌面路徑及實現(xiàn)掃描二維碼圖片返回相關信息
前言:
在平時敲代碼過程中,我們會經(jīng)常讀取或者保存文件到桌面,你自己一個人使用倒還好,如果你將你的代碼給別人使用,別人在使用過程中就很有可能因為找不到路徑而報錯,接著就要去更改路徑相關的代碼,這就顯得比較麻煩。
這次分享一個桌面路徑獲取的函數(shù),以后只要復制并調用這個函數(shù)就好。
一、winreg生成桌面路徑
代碼如下:
import winreg def desktop_path(): ? ? key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, r'Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders') ? ? desktop = winreg.QueryValueEx(key, "Desktop")[0] ? ? # print(desktop) ? ? return desktop desktop_path()
首先需要導入winreg模塊。
winreg是python的一個標準庫,用來對windows注冊表的操作。
注意:return desktop 在這里是必須的,如果沒有return語句,則python默認返回值為None。
這是之前需要手寫桌面路徑的代碼:
name = input("請輸入你的文件名(帶后綴):") wenjian = r"C:\Users\knighthood\OneDrive\桌面\{}".format(name)
這是使用函數(shù)后的代碼:
name = input("請輸入你的文件名(帶后綴):") wenjian = "{}\{}".format(desktop_path(), name)
現(xiàn)在就只要輸入你文件名和后綴名就行,省去了桌面路徑的查找與復制。
二、實現(xiàn)掃描二維碼圖片返回相關信息
1、模塊準備
這里需要用到PIL和pyzbar模塊
2、代碼解析
img = Image.open(image)
Image.open(image)用來讀取圖片
barcodes = pyzbar.decode(img)
pyzbar.decode(img)用于解析圖片信息
因為一張圖片可能是一張二維碼,也可能里面有許多二維碼,因此需要遍歷解析出的圖片信息并進行utf-8格式的轉換
? ? for barcode in barcodes: ? ? ? ? barcodeData = barcode.data.decode("utf-8")
最后將它們封裝成函數(shù)即可。
3、代碼展示
QRcode_message.py
# -*- coding: utf-8-*- from PIL import Image import pyzbar.pyzbar as pyzbar ? def QRcode_message(image): ? ? img = Image.open(image) ? ? # 因為一張圖片可能是一張二維碼,也可能里面有許多二維碼 ? ? barcodes = pyzbar.decode(img) ? ? for barcode in barcodes: ? ? ? ? barcodeData = barcode.data.decode("utf-8") ? ? ? ? print(barcodeData) ? if __name__ == '__main__': ? ? QRcode_message('test.jpg')
注意:準備好的圖片要和QRcode_message.py在同一目錄下
到此這篇關于python利用winreg生成桌面路徑及實現(xiàn)掃描二維碼圖片返回相關信息的文章就介紹到這了,更多相關python生成路徑內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
執(zhí)行python腳本并傳入json數(shù)據(jù)格式參數(shù)方式
這篇文章主要介紹了執(zhí)行python腳本并傳入json數(shù)據(jù)格式參數(shù)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-09-09Django def clean()函數(shù)對表單中的數(shù)據(jù)進行驗證操作
這篇文章主要介紹了Django def clean()函數(shù)對表單中的數(shù)據(jù)進行驗證操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07Windows系統(tǒng)下安裝Python的SSH模塊教程
這篇文章主要介紹了Windows系統(tǒng)下安裝Python的SSH模塊教程,本文涵蓋了pycrypto、ecdsa、paramiko、OpenSSH、SSH等模塊的安裝,需要的朋友可以參考下2015-02-02