亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Python混合編程

        2018-07-11 06:00:10薛建波羅佳
        電子測試 2018年12期
        關(guān)鍵詞:源代碼關(guān)鍵字調(diào)用

        薛建波,羅佳

        (武漢虹旭信息技術(shù)有限責(zé)任公司, 湖北武漢,430074)

        1 Python語言簡介

        Python是一個高層次的結(jié)合了解釋性、編譯性、互動性和面向?qū)ο蟮哪_本語言。其設(shè)計(jì)具有很強(qiáng)的可讀性,相比其他語言,Python具有特有的語法結(jié)構(gòu)。Python支持廣泛的應(yīng)用程序開發(fā),從簡單的文字處理到web開發(fā),以及數(shù)據(jù)庫操作。Python的特點(diǎn)有以下幾個方面:Python有相對比較少的關(guān)鍵字,結(jié)構(gòu)簡單,語法定義明確。Python代碼使用空格對齊,更加便于閱讀和理解。每一個模塊有清晰的定義和調(diào)用說明,在軟件完成以后的維護(hù)很容易。Python的易于學(xué)習(xí)和編寫使其快速地流行。經(jīng)過多年的發(fā)展和標(biāo)準(zhǔn)制定,Python提供了豐富的標(biāo)準(zhǔn)庫。這些庫文件安裝可以通過Python命令進(jìn)行。庫文件的調(diào)用也十分簡單。如果標(biāo)準(zhǔn)庫中沒有目標(biāo)程序源碼,用戶可以自己通過c或者C++自我實(shí)現(xiàn)。也可以通過API對C和C++進(jìn)行調(diào)用。Python支持所有的商業(yè)數(shù)據(jù)庫的數(shù)據(jù)接口,支持GUI編程。提供成熟可靠的的web框架,簡化的web開發(fā)的過程。不同用途或者功能的軟件開發(fā)可能需要不同的語言進(jìn)行編寫。特定的語言提供了良好數(shù)據(jù)操作和簡化后的編程邏輯。而Python提供了當(dāng)前許多不同功能軟件開發(fā)、操作的庫。不同的程序,相同的語言進(jìn)行實(shí)現(xiàn),效率更高,兼容性更好。此外,Python還支持機(jī)器學(xué)習(xí)和創(chuàng)建數(shù)學(xué)模型。

        2 基于Python的混合語言編程

        使用Python進(jìn)行混合編程有兩種方式:擴(kuò)展和嵌入。擴(kuò)展是通過C、C++等系統(tǒng)語言實(shí)現(xiàn)Python的功能模塊。嵌入是將Python解釋器加載到應(yīng)用程序中,使程序能夠解釋運(yùn)行Python語言寫成的腳本。兩者都需要調(diào)用C語言應(yīng)用程序接口。

        2.1 需要擴(kuò)展Python語言的理由

        (1)添加/額外的(非Python)功能,提供Python核心功能中沒有提供的部分,比如創(chuàng)建新的數(shù)據(jù)類型或者將Python嵌入到其它已經(jīng)存在的應(yīng)用程序中,則必須進(jìn)行擴(kuò)展編譯。(2)性能瓶頸的效率提升。解釋型語言一般比編譯型語言慢,如果某一個模塊處理的數(shù)據(jù)比較多,或者會頻繁的操作IO,整個程序的運(yùn)行速度會降低,形成程序的瓶頸。但是如果將所有的程序都用低級語言編寫,會存在兩個問題:一是工程量太大,不符合軟件開發(fā)的初衷-高效率;二是有些模塊,Python的運(yùn)行效率與低級語言運(yùn)行效率相差不大,不需要重新編譯。(3)核心代碼加密。因?yàn)镻ython是解釋性語言,源代碼沒有私密性。將核心代碼由Python語言轉(zhuǎn)變?yōu)榫幾g語言就變得很重要。

        2.2 擴(kuò)展的典型程序結(jié)構(gòu)

        (1)創(chuàng)建應(yīng)用程序的源代碼。(2)利用樣板來包裝代碼。(3)創(chuàng)建setup.py進(jìn)行編譯,封裝為Python的庫。(4)通過Python解釋器運(yùn)行。

        3 應(yīng)用舉例

        下面以在Linux下面環(huán)境下進(jìn)行文本檢索的實(shí)例,介紹基于Python的混合編程。該程序?qū)崿F(xiàn)了對格式化的文本進(jìn)行檢索,查找關(guān)鍵字,提取出包含關(guān)鍵字的數(shù)據(jù)段。程序運(yùn)行環(huán)境:操作系統(tǒng)-Red Hat 4.4.7-3;編譯器-GCC 4.4.7;Python解釋器-Python 2.6.6。

        3.1 創(chuàng)建程序源代碼

        在頭文件中添加Python.h,里面包含了Python定義的所有的內(nèi)部數(shù)據(jù)結(jié)構(gòu)和C API函數(shù)原型。按照程序邏輯編寫文本處理函數(shù)體。通過GCC編譯其中的主程序。

        3.2 進(jìn)行模塊封裝

        (1)對照C語言源代碼,在文件中為每個模塊的每一個函數(shù)增加PyObject* M_func()的包裝函數(shù)。包裝函數(shù)的目的是把python的值傳遞給c,再把c中函數(shù)的計(jì)算結(jié)果轉(zhuǎn)換成Python對象返回給python。

        (2)將每個模塊增加一個PyMethodDef ModuleMethods[]的數(shù)組,為Python解釋器提供調(diào)用入口:

        (3)增加模塊初始化函數(shù)void initMethod():

        3.3 編譯測試

        (1)編寫setup.py文件。

        (2)執(zhí)行setup文件,擴(kuò)展的模塊會被導(dǎo)入至Python的調(diào)用庫。程序執(zhí)行的時(shí)候,解釋器找到模塊的位置,進(jìn)行調(diào)用。

        (3)運(yùn)行結(jié)果。在文本中找到的關(guān)鍵字?jǐn)?shù)據(jù),并且提取出了文本段。

        在原始的文本數(shù)據(jù)量很大的情況下,擴(kuò)展以后的數(shù)據(jù)檢索速度明顯快于純Python腳本檢索的速度。在此基礎(chǔ)上,加入Python的機(jī)器學(xué)習(xí)的庫文件進(jìn)行程序功能的擴(kuò)展,就能實(shí)現(xiàn)數(shù)據(jù)推薦功能。

        4 結(jié)語

        人工智能興起帶動了Python的發(fā)展。Google開源了Python機(jī)器學(xué)習(xí)源碼,提供大量標(biāo)準(zhǔn)的Python機(jī)器學(xué)習(xí)庫。Python的底層是由C/C++實(shí)現(xiàn)。運(yùn)行速度低于編譯語言。隨著處理的數(shù)據(jù)量越來越大,對程序處理速度要求也會不斷提升。混合語言編程以后肯定會應(yīng)用的更加廣泛。

        猜你喜歡
        源代碼關(guān)鍵字調(diào)用
        人工智能下復(fù)雜軟件源代碼缺陷精準(zhǔn)校正
        履職盡責(zé)求實(shí)效 真抓實(shí)干勇作為——十個關(guān)鍵字,盤點(diǎn)江蘇統(tǒng)戰(zhàn)的2021
        基于TXL的源代碼插樁技術(shù)研究
        核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
        成功避開“關(guān)鍵字”
        LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
        軟件源代碼非公知性司法鑒定方法探析
        基于系統(tǒng)調(diào)用的惡意軟件檢測技術(shù)研究
        揭秘龍湖產(chǎn)品“源代碼”
        利用RFC技術(shù)實(shí)現(xiàn)SAP系統(tǒng)接口通信
        免费欧洲毛片a级视频老妇女 | 欧美视频九九一区二区 | 日日噜噜噜夜夜狠狠久久蜜桃 | 欧美另类人妖| 中国精学生妹品射精久久| www.av在线.com| 99伊人久久精品亚洲午夜| 午夜爽爽爽男女免费观看影院| 乱人伦中文无码视频| 国产在线观看黄| 亚洲五月天中文字幕第一页| 大地资源网在线观看免费官网 | 伊人久久大香线蕉综合网站 | 热re99久久精品国产66热6| 亚洲黄色精品在线播放| 久久精品亚洲精品国产色婷| 日韩乱码人妻无码中文字幕视频| 亚洲av乱码专区国产乱码| 中文字幕亚洲中文第一| 亚洲 日本 欧美 中文幕| 国产一区二区三区在线观看免费 | 粗一硬一长一进一爽一a视频| 久久国内精品自在自线| 任你躁国产自任一区二区三区| 久久91综合国产91久久精品| 人妻少妇中文字幕av| 中文区中文字幕免费看| 夫妇交换刺激做爰视频| 亚洲精品国产二区三区在线| 各类熟女熟妇激情自拍| 精品视频无码一区二区三区| 免费啪啪视频一区| 国产肥熟女视频一区二区三区 | 在线亚洲精品一区二区三区| 日本高清在线一区二区三区| 日韩内射美女人妻一区二区三区 | 久精品国产欧美亚洲色aⅴ大片 | 麻豆国产精品久久人妻| 97午夜理论片在线影院| 久久精品国产亚洲av麻豆四虎| 熟女一区二区中文字幕|