python編譯文檔輸出word
『壹』 如何用python編寫代碼在Word中實現帶公式計算過程的計算書
1、打開idle。點擊file,然後點擊new file 這是創建一個新的文件。新建...
答:1、打開idle。點擊file,然後點擊new file.這是創建一個新的文件。 新建一個文件之後,我們輸入第一行代碼,使用print函數,在屏幕上列印一句話,其中字元串要使用雙引號,輸入法要使用英文輸入法,如果符號使用中文輸入法輸入,就會出現錯誤。p...
2020-11-17回答者:環球青藤1個回答
pythonsympy中生成的公式怎麼粘到word里
答:右鍵選 show math as→mathML Code 全選復制,在word中右鍵以文本形式粘貼
2018-01-27回答者:夜歌在路上2個回答
如何使用python提取並處理word文檔中插入的mathtyp...
答:我沒做過,只能提供大概思路給你。這是mathtype的SDK:,裡面關於API的描述: MathType API Documentation The MathType API allows you to call functions used by the MathType Commands ForWord. On Windows, this API is split between MathP...
2017-10-03回答者:天天不看java1個回答
如何用python寫這個代碼
問:使用兩個參數定義一個名為dictionaryToListOfValues的函數。 此函數的第...
答:使用Python自帶的IDLE 在開始-->程序-->Python2.5(視你安裝的版本而不同)中找到IDLE(Python GUI)。 點擊後彈出如下窗體: 1,在>>>提示符後輸入代碼,回車,就可以執行此代碼。 IDLE支持語法高亮,支持自動縮進,支持方法提示,不過提示的很慢。...
2019-10-17回答者:司馬刀劍2個回答3
如何用python編寫計算器
答:我想你的需求應該是一個圖形界面的程序,而不是簡單的在命令行上輸入。 那麼,要做的第一件事就是選擇一個圖形界面套件。可以使用原生的TK,也可以用跨平台性能很好的wxPython,或者是整體結構很像MFC的PyWin32。至於pyGTK,pyQT,都是可選的,但...
2011-05-30回答者:碧藍右耳3個回答6
用Python編寫代碼1×2×3+4×5×6+7×8×9+++···99×100×1...
答:t=1 for i in range(1,102): t*=i print(t)
2020-04-05回答者:知道網友1個回答2
python如何識別docx中的公式
答:import fnmatch, os, sys, win32com.client readpath=r'D:123'wordapp = win32com.client.gencache.EnsureDispatch("Word.Application") try: for path, dirs, files in os.walk(readpath): for filename in files: if not fnmatch.fnmatch(fi...
2016-07-09回答者:知道網友1個回答2
如何用Python代碼運行Word中的VBA
問:請問有什麼好的辦法用Python代碼運行Word中的VBA嗎, 具體需要import哪...
答:安裝pypiwin32 import win32com.client app= win32com.client.Dispatch("word.Application") app.Workbooks.Open("宏代碼所在文件路徑") app.Application.Run("宏名稱") app.Application.Quit()
2019-08-31回答者:娘化的新世界1個回答
用Python寫一個,兩個數的加,減,乘,除的函數,...
答:我課程中的部分代碼(除沒寫): def f_add(a,b): return a+bdef f_mul(a,b): return a*bdef f_sub(a,b): return a-b def g1(f,a,b): return f(a,b)a,b,c,d = 1,2,3,4print g1(f_sub, g1(f_mul, g1(f_add,a,b), c), d), g1(f_mul, g1(f_add,a,b)...
2017-11-21回答者:黑板客1個回答4
python編寫2個函數代碼,實現求最小公倍數和最大公...
問:使用兩個函數實現,最小公倍數和最大公約數
答:def gcd(a, b): # 求最大公約數 x = a % b while (x != 0): a, b = b, x x = a % b return bdef lcm(a,b): # 求最小公倍數 return a*b//gcd(a,b) 程序縮進如圖所示
『貳』 如何用python讀取excel生成word文檔
word文件轉html有兩種格式可選wdFormatHTML、wdFormatFilteredHTML(對應數字8、10),區別是如果是wdFormatHTML格式的話
word文件裡面的公式等ole對象將會存儲成wmf格式,而選用wdFormatFilteredHTML的話公式圖片將存儲為gif格式,而且目測可以看出用wdFormatFilteredHTML生成的HTML明顯比wdFormatHTML要干凈許多。
『叄』 怎麼把python輸出為word
程序導出word文檔的方法
將web/html內容導出為world文檔,再java中有很多解決方案,比如使用Jacob、Apache POI、Java2Word、iText等各種方式,以及使用freemarker這樣的模板引擎這樣的方式。php中也有一些相應的方法,但在python中將web/html內容生成world文檔的方法是很少的。其中最不好解決的就是如何將使用js代碼非同步獲取填充的數據,圖片導出到word文檔中。
1. unoconv
功能:
1.支持將本地html文檔轉換為docx格式的文檔,所以需要先將網頁中的html文件保存到本地,再調用unoconv進行轉換。轉換效果也不錯,使用方法非常簡單。
?
\# 安裝
sudo apt-get install unoconv
\# 使用
unoconv -f pdf *.odt
unoconv -f doc *.odt
unoconv -f html *.odt
缺點:
1.只能對靜態html進行轉換,對於頁面中有使用ajax非同步獲取數據的地方也不能轉換(主要是要保證從web頁面保存下來的html文件中有數據)。
2.只能對html進行轉換,如果頁面中有使用echarts,highcharts等js代碼生成的圖片,是無法將這些圖片轉換到word文檔中;
3.生成的word文檔內容格式不容易控制。
2. python-docx
功能:
1.python-docx是一個可以讀寫word文檔的python庫。
使用方法:
1.獲取網頁中的數據,使用python手動排版添加到word文檔中。
『肆』 python依據模板生成word文件
1、安裝包
pip installdocxtpl
2、製作模板
『伍』 實現python文本寫入word
准備
我測試使用的Python版本為2.7.10,如果你的版本是Python3.5的話,這里就不太適合了。
使用Speech API
原理
我們的想法是藉助微軟的語音介面,所以我們肯定是要進行調用 相關的介面。所以我們需要安裝pywin32來幫助我們完成這一個底層的交互。
示例代碼
import win32com.clientspeaker = win32com.client.Dispatch("SAPI.SpVoice")speaker.Speak("Hello, it works!")
小總結
是的,調用介面來實現語音功能就是這么簡單,但是我們不得不來聊一聊這種方式的缺點。
對中文支持的不夠好,僅僅是這一點,估計在中國沒幾個用它的了。
還有就是語速不能很好的控制
pyttsx方式
原理
pyttsx 是Python的一個關於文字轉語音方面的很不錯的庫。我們還可以藉助pyttsx來實現在線朗讀rfc文件或者本地文件等等,最為關鍵的是,它對中文支持的還是不錯的。
示例代碼
# coding:utf-8import sysreload(sys)sys.setdefaultencoding('utf8')# __author__ = '郭 璞'# __date__ = '2016/8/6'# __Desc__ = 文字轉語音輸出import pyttsxengine = pyttsx.init()engine.say('hello world')engine.say('你好,郭璞')engine.runAndWait()# 朗讀一次engine.endLoop()
小總結
使用pyttsx,我們可以藉助其強大的API來實現我們基本的業務需求。很酷吧。
pyttsx深入研究
做完上面的小實驗,你肯定會覺得怎麼這么不過癮呢?
別擔心,下面我們就一起走進pyttsx的世界,深入的研究一下其工作原理吧。
語音引擎工廠
類似於設計模式中的「工廠模式」,pyttsx通過初始化來獲取語音引擎。當我們第一次調用init操作的時候,會返回一個pyttsx的engine對象,再次調用的時候,如果存在engine對象實例,就會使用現有的,否則再重新創建一個。
pyttsx.init([driverName : string, debug : bool]) → pyttsx.Engine
從方法聲明上來看,第一個參數指定的是語音驅動的名稱,這個在底層適合操作系統密切相關的。如下:
1.drivename:由pyttsx.driver模塊根據操作系統類型來調用,默認使用當前操作系統可以使用的最好的驅動
sapi5 - SAPI5 on Windows
nsss - NSSpeechSynthesizer on Mac OS X
espeak - eSpeak on every other platform
2.debug: 這第二個參數是指定要不要以調試狀態輸出,建議開發階段設置為True
引擎介面
要想很好的運用一個庫,不了解其API是不行的。下面來看看pyttsx。engine.Engine的引擎API。
方法簽名 參數列表 返回值 簡單釋義
connect(topic : string, cb : callable) topic:要描述的事件名稱;cb:回調函數 → dict 在給定的topic上添加回調通知
disconnect(token : dict) token:回調失聯的返回標記 Void 結束連接
endLoop() None → None 簡單來說就是結束事件循環
getProperty(name : string) name有這些枚舉值「rate, vioce,vioces,volumn → object 獲取當前引擎實例的屬性值
setProperty(name : string) name有這些枚舉值「rate, vioce,vioces,volumn → object 設置當前引擎實例的屬性值
say(text : unicode, name : string) text:要進行朗讀的文本數據; name: 關聯發音人,一般用不到 → None 預設要朗讀的文本數據,這也是「萬事俱備,只欠東風」中的「萬事俱備」
runAndWait() None → None 這個方法就是「東風」了。當事件隊列中事件全部清空的時候返回
startLoop([useDriverLoop : bool]) useDriverLoop:是否啟用驅動循環 → None 開啟事件隊列
元數據音調
在pyttsx.voice.Voice中,處理合成器的發音。
age
發音人的年齡,默認為None
gender
以字元串為類型的發音人性別: male, female, or neutral.默認為None
id
關於Voice的字元串確認信息. 通過 pyttsx.engine.Engine.setPropertyValue()來設置活動發音簽名. 這個屬性總是被定義。
languages
發音支持的語言列表,如果沒有,則為一個空的列表。
name
發音人名稱,默認為None.
更多測試
朗讀文本
import pyttsxengine = pyttsx.init()engine.say('Sally sells seashells by the seashore.')engine.say('The quick brown fox jumped over the lazy dog.')engine.runAndWait()
事件監聽
import pyttsxdef onStart(name): print 'starting', namedef onWord(name, location, length): print 'word', name, location, lengthdef onEnd(name, completed): print 'finishing', name, completedengine = pyttsx.init()engine.say('The quick brown fox jumped over the lazy dog.')engine.runAndWait()
打斷發音
import pyttsxdef onWord(name, location, length): print 'word', name, location, length if location > 10: engine.stop()engine = pyttsx.init()engine.say('The quick brown fox jumped over the lazy dog.')engine.runAndWait()
更換發音人聲音
engine = pyttsx.init()voices = engine.getProperty('voices')for voice in voices: engine.setProperty('voice', voice.id) engine.say('The quick brown fox jumped over the lazy dog.')engine.runAndWait()
語速控制
engine = pyttsx.init()rate = engine.getProperty('rate')engine.setProperty('rate', rate+50)engine.say('The quick brown fox jumped over the lazy dog.')engine.runAndWait()
音量控制
engine = pyttsx.init()volume = engine.getProperty('volume')engine.setProperty('volume', volume-0.25)engine.say('The quick brown fox jumped over the lazy dog.')engine.runAndWait()
執行一個事件驅動循環
engine = pyttsx.init()def onStart(name): print 'starting', namedef onWord(name, location, length): print 'word', name, location, lengthdef onEnd(name, completed): print 'finishing', name, completed if name == 'fox': engine.say('What a lazy dog!', 'dog') elif name == 'dog': engine.endLoop()engine = pyttsx.init()engine.say('The quick brown fox jumped over the lazy dog.', 'fox')engine.startLoop()
使用一個外部的驅動循環
engine = pyttsx.init()engine.say('The quick brown fox jumped over the lazy dog.', 'fox')engin(www.alOnely.Com.Cn)e.startLoop(False)# engine.iterate() must be called inside externalLoop()externalLoop()engine.endLoop()
總結
以上就是Python如何實現文本轉語音的全部內容,看完了上面的講述,是不是感覺Python實現文本轉語音還是蠻簡單的?那麼,大家快來嘗試嘗試吧。希望本文對大家學習Python有所幫助。
『陸』 Python寫完編碼運行後,保存為了Word文檔咋辦,怎麼保存為.py後綴
1,python自帶有IDLE,可以互動式執行python程序;記事本也可以,但是需要寫好py文件後命令行執行,麻煩一點;
2,你安裝好python後就可以雙擊運行,但是一般程序都一閃而過了.還是IDLE或者命令行運行好一點,可以看到輸出;
3,跟第二個問題一樣,可以,只是閃過了看不到輸出而已;
4,跟第二個問題一樣.雙擊其實你已經運行了,只是你看不到輸出而已.當然,如果你做的是GUI程序,有界面的,雙擊就會看到結果.但是GUI對於新手太復雜了
『柒』 如何使用python將pdf文件改成word文件
用軟體,使用之後然後有兩種結果
1、轉化出來的就是想要的word,這種情況最理想了;
2、轉化出來的word上都是圖片,需要上網找「ABBYY finereader v9」一類的文字識別軟體。ABBYY finereader v9是我見過的最強大的PDF(圖片格式或者是掃描件)轉word的軟體。它是一款OCR軟體,界面比較簡潔明,9.0和以上版本有簡體中文版的,支持100語言的識別,特別是混合多種語言識別效果也非常好:安裝完畢之後,首先把圖片上的文字識別出來,然後再對照圖片把識別錯誤的地方改過來,這樣就實現了,從JPEG文件到word的格式轉換。
這一類的軟體有PDF To Word Converter、Solid converter PDF等,大致過程都是一樣的。
也可以在線聯網將PDF轉為word文件,但是存在泄密的可能性,因此不建議使用。
『捌』 python如何編寫程序輸出「hello world」
在python環境下,輸入一個語句:print('"hello world"'),就可以產生"hello world"的輸出。
『玖』 如何用python或者R批量生成固定格式的word文檔
office 2007中不能直接打開VB編輯器,請按Alt + F11打開。
import win32com.client # 導入腳本模塊 WordApp = win32com.client.Dispatch("Word.Application") # 載入WORD模塊
WordApp.Visible = True
# 顯示Word應用程序
1、 新建Word文檔
doc = WordApp.Documents.Add()
# 新建空文件
doc = WordApp.Documents.Open(r"d:\2011專業考試計劃.doc") # 打開指定文檔
doc.SaveAs(r"d:\2011專業考試計劃.doc")
# 文檔保存
doc.Close(-1)
# 保存後關閉,doc.Close()或doc.Close(0)直接關閉不保存
2、 頁面設置
doc.PageSetup.PaperSize = 7
# 紙張大小, A3=6, A4=7
doc.PageSetup.PageWidth = 21*28.35 # 直接設置紙張大小, 使用該設置後PaperSize設置取消
doc.PageSetup.PageHeight = 29.7*28.35 # 直接設置紙張大小
doc.PageSetup.Orientation = 1 # 頁面方向, 豎直=0, 水平=1 doc.PageSetup.TopMargin = 3*28.35
# 頁邊距上=3cm,1cm=28.35pt
doc.PageSetup.BottomMargin = 3*28.35 # 頁邊距下=3cm doc.PageSetup.LeftMargin = 2.5*28.35 # 頁邊距左=2.5cm doc.PageSetup.RightMargin = 2.5*28.35 # 頁邊距右=2.5cm
doc.PageSetup.TextColumns.SetCount(2) # 設置頁面分欄=2
3、 格式設置
sel = WordApp.Selection
# 獲取Selection對象 sel.InsertBreak(8)
# 插入分欄符=8, 分頁符=7
sel.Font.Name = "黑體" # 字體 sel.Font.Size = 24 # 字大 sel.Font.Bold = True # 粗體 sel.Font.Italic = True # 斜體 sel.Font.Underline = True
# 下劃線
sel.ParagraphFormat.LineSpacing = 2*12 # 設置行距,1行=12磅
sel.ParagraphFormat.Alignment = 1 # 段落對齊,0=左對齊,1=居中,2=右對齊 sel.TypeText("XXXX") # 插入文字 sel.TypeParagraph()
# 插入空行
註:ParagraphFormat屬性必須使用TypeParagraph()之後才能二次生效