python國際化
A. python數據挖掘工具包有什麼優缺點
【導讀】python數據挖掘工具包就是scikit-learn,scikit-learn是一個基於NumPy, SciPy,
Matplotlib的開源機器學習工具包,主要涵蓋分類,回歸和聚類演算法,例如SVM,
邏輯回歸,樸素貝葉斯,隨機森林,k-means等演算法,代碼和文檔都非常不錯,在許多Python項目中都有應用。
優點:
1、文檔齊全:官方文檔齊全,更新及時。
2、介面易用:針對所有演算法提供了一致的介面調用規則,不管是KNN、K-Means還是PCA.
3、演算法全面:涵蓋主流機器學習任務的演算法,包括回歸演算法、分類演算法、聚類分析、數據降維處理等。
缺點:
缺點是scikit-learn不支持分布式計算,不適合用來處理超大型數據。
Pandas是一個強大的時間序列數據處理工具包,Pandas是基於Numpy構建的,比Numpy的使用更簡單。最初開發的目的是為了分析財經數據,現在已經廣泛應用在Python數據分析領域中。Pandas,最基礎的數據結構是Series,用它來表達一行數據,可以理解為一維的數組。另一個關鍵的數據結構為DataFrame,它表示的是二維數組
Pandas是基於NumPy和Matplotlib開發的,主要用於數據分析和數據可視化,它的數據結構DataFrame和R語言里的data.frame很像,特別是對於時間序列數據有自己的一套分析機制。有一本書《Python
for Data Analysis》,作者是Pandas的主力開發,依次介紹了iPython, NumPy,
Pandas里的相關功能,數據可視化,數據清洗和加工,時間數據處理等,案例包括金融股票數據挖掘等,相當不錯。
Mlpy是基於NumPy/SciPy的Python機器學習模塊,它是Cython的擴展應用。
關於python數據挖掘工具包的優缺點,就給大家介紹到這里了,scikit-learn提供了一致的調用介面。它基於Numpy和scipy等Python數值計算庫,提供了高效的演算法實現,所以想要學習python,以上的內容得學會。
B. 用 Python 可以來做什麼
Web 和 Internet開發;科學計算和統計;人工智慧;桌面界面開發;軟體開發;後端開發;網路介面:能方便進行系統維護和管理,Linux下標志性語言之一,是很多系統管理員理想的編程工具。
Python的設計目標之一是讓代碼具備高度的可閱讀性。它設計時盡量使用其它語言經常使用的標點符號和英文單字,讓代碼看起來整潔美觀。它不像其他的靜態語言如C、Pascal那樣需要重復書寫聲明語句,也不像它們的語法那樣經常有特殊情況和意外。
Python標准庫的主要功能有:
1、文本處理,包含文本格式化、正則表達式匹配、文本差異計算與合並、Unicode支持,二進制數據處理等功能
2、文件處理,包含文件操作、創建臨時文件、文件壓縮與歸檔、操作配置文件等功能
3、操作系統功能,包含線程與進程支持、IO復用、日期與時間處理、調用系統函數、寫日記(logging)等功能
4、網路通信,包含網路套接字,SSL加密通信、非同步網路通信等功能
5、網路協議,支持HTTP,FTP,SMTP,POP,IMAP,NNTP,XMLRPC等多種網路協議,並提供了編寫網路伺服器的框架
6、W3C格式支持,包含HTML,SGML,XML的處理
7、其它功能,包括國際化支持、數學運算、HASH、Tkinter等
C. 有哪些python框架需要學習
需要學習的python框架有:1、Django,它是一個高級的python web框架,以快速開發和使用簡潔的設計聞名;2、CherryPy,它是歷史最久的框架之一,運行非常穩定且快速;3、Web2Py,它是一個開源、免費的web框架。
常用的五大python框架:
(推薦教程:Python入門教程)
1、Django
Django是一個高級的Python Web框架,以快速開發和實用簡潔的設計聞名。它由經驗豐富的開發人員構建,解決了Web開發的麻煩,因此用戶可以專注於編寫應用程序,而不需要擔心返工。並且它是開源和免費的。
特點:
安全系數高,能幫助開發者規避常見錯誤。
速度特別快,因為它的設計目的是使應用程序非常快地從概念階段過渡到最終階段。
擴展性好。
從21世紀初Django成為開源框架到現在,它一直是最佳的歸檔方式。
2、CherryPy
CherryPy是歷史最久的框架之一,運行非常穩定且快速。該框架允許開發人員構建web應用程序,和以Python為對象的應用程序開發過程類似,因而可在更短的時間內開發更小的源代碼。
從一開始,CherryPy就被證明是高效快速的,並被許多站點用於生產,無論是最簡單的站點,還是有高要求的站點。
特點:
可以在2.7+、3.5+、Jython、Android和PyPy上運行。
內置覆蓋、分析和測試支持。
容易快速運行多個HTTP伺服器(例如,在多個埠上)。
是為部署人員和開發人員提供的最強大的配置系統之一。
靈活的插件系統。
3、Web2Py
Web2Py是一個開源、免費的web框架,用於敏捷開發,其中包括資料庫驅動的web應用程序。它是用Python編寫的,並可用於python編程。它是個全堆棧框架,由開發人員構建功能齊全的web應用程序所需的所有必要組件組成。
特點:
能夠簡化復雜大型應用的開發
支持MVC體系結構
符合Ni配置和安裝要求
提供本地化和國際化支持
4、Bottle
Bottle是一個用於Python的簡單、輕量級、快速的Web伺服器網關介面(WSGI)微web框架。它是作為單個文件模塊分發的,除了Python標准庫之外沒有其他依賴項。它被設計成輕量級,允許快速有效地開發web應用程序。
特點:
5、Flask
Flask是一個微框架,最適合簡單的小項目。該框架基於Jinja 2和Werkzeug開發。這個框架的主要目的是開發一個強大的web應用程序庫。
特點:
包含開發調試器和伺服器
有豐富的文檔
支持安全cookie
基於unicode
單元測試集成支持
D. python里的.format()是什麼意思
format函數這是一種字元串格式化的方法,用法如str.format()。
基本語法是通過 {} 和 : 來代替以前的 % 。
以下展示兩種主要用法:
(1)如:語句print("{:.2f}".format(3.1415926)),它的輸出為3.14,可以看出命令為保留兩位小數點。
(2)如:語句"{1} {0} {1}".format("hello", "world"),它的輸出為'world hello world',可以看出format為他們設置了位置。
又如:語句print '{} *'.format(j)表示輸出變數j的值以及乘號:j*,可以看出用在循環里可以輸出一個乘法的等式。
又如:語句print "{} 對應的位置是 {{0}}".format("runoob"),它的輸出為'runoob對應的位置是0'.
(4)python國際化擴展閱讀:
如果在格式化數字時沒有指定format,Format會提供與Str函數類似的功能,盡管它是國際化的。然而,以Format作用在正數上不會保留正負號空間,而以Str的話則會。
如果要格式化一個沒有本地化的數值字元串,應該使用一個用戶自定義的數值格式,以保證得到需要的外觀。
注意如果Calendar屬性設置是Gregorian ,並且format指定了日期格式,那麼,提供的expression必須是Gregorian 。如果Visual BasicCalendar屬性設置是 Hijri,則提供的的expression必須是Hijri 。
E. Python 常用的標准庫以及第三方庫有哪些
5個常用的Python標准庫:
1、os:提供了不少與操作系統相關聯的函數庫
os包是Python與操作系統的介面。我們可以用os包來實現操作系統的許多功能,比如管理系統進程,改變當前路徑,改變文件許可權等。但要注意,os包是建立在操作系統的平台上的,許多功能在Windows系統上是無法實現的。另外,在使用os包中,要注意其中的有些功能已經被其他的包取代。
我們通過文件系統來管理磁碟上儲存的文件。查找、刪除、復制文件以及列出文件列表等都是常見的文件操作。這些功能通常可以在操作系統中看到,但現在可以通過Python標准庫中的glob包、shutil包、os.path包以及os包的一些函數等,在Python內部實現。
2、sys:通常用於命令行參數的庫
sys包被用於管理Python自身的運行環境。Python是一個解釋器,也是一個運行在操作系統上的程序。我們可以用sys包來控制這一程序運行的許多參數,比如說Python運行所能占據的內存和CPU,Python所要掃描的路徑等。另一個重要功能是和Python自己的命令行互動,從命令行讀取命令和參數。
3、random:用於生成隨機數的庫
Python標准庫中的random函數,可以生成隨機浮點數、整數、字元串,甚至幫助你隨機選擇列表序列中的一個元素,打亂一組數據等。
4、math:提供了數學常數和數學函數
標准庫中,Python定義了一些新的數字類型,以彌補之前的數字類型可能的不足。標准庫還包含了random包,用於處理隨機數相關的功能。math包補充了一些重要的數學常數和數學函數,比如pi、三角函數等等。
5、datetime:日期和時間的操作庫
日期和時間的管理並不復雜,但容易犯錯。Python的標准庫中對日期和時間的管理頗為完善,你不僅可以進行日期時間的查詢和變換,還可以對日期時間進行運算。通過這些標准庫,還可以根據需要控制日期時間輸出的文本格式。
除此之外,Python還有很多第三方庫,了解更多可移步:oldboye
F. python模塊i18n怎麼導入
Python通過gettext模塊支持國際化(i18n),可以實現程序的多語言界面的支持,下面是我的多語言支持實現:
1. 在python安裝目錄下的./Tools/i18n/(windows下例 D:\Program Files\Python25\Tools\i18n)目錄中找到pygettext.py運行之,生成翻譯文件模版messages.pot,內容大概是這個樣子:
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR ORGANIZATION
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2007-01-24 15:05+China Standard Time\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <[email protected]>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
改之,charset=gb2312 Content-Transfer-Encoding: utf8如下:
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR ORGANIZATION
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2007-01-18 09:55+China Standard Time\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <[email protected]>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=gb2312\n"
"Content-Transfer-Encoding: utf8\n"
"Generated-By: pygettext.py 1.5\n"
那個msgid」 」 和msgstr」 「不要動
好,翻譯文件已經建立了,保存之,文件名改為lang.po.
2. 建立翻譯文件路徑,在主文件目錄下建立中文翻譯路徑 ./locale/cn/LC_MESSAGES/(windows下例D:\ python-prj\src\locale\cn\LC_MESSAGES,其中src目錄是源文件主目錄),英文翻譯路徑 ./locale/en/LC_MESSAGES/(windows下例D:\ python-prj\src\locale\en\LC_MESSAGES,其中src目錄是源文件主目錄)
3. 在主文件中引入gettext模塊:
# -*- coding: utf-8 -*-
#!/usr/bin/env python
import gettext
gettext.install('lang', './locale', unicode=False)
gettext.translation('lang', './locale', languages=['cn']).install(True)
第四行中lang是翻譯文件主名, ./locale是存放翻譯文件的路徑,第三個參數是是否使用unicode,第五行languages參數指定要使用的語言存放的子目錄,這里cn表示使用./locale/cn/LC_MESSAGES/路徑下的翻譯文件.
注意: # -*- coding: utf-8 -*- 一定要寫在前兩行,寫第三行都不會生效
4. 處理要翻譯的字元串,例:
print 「Hello world!」
print 「Python is a good Language.」
改之:
print _(「Hello world!」)
print _(「Python is a good Language.」)
5. 編寫並生成翻譯文件,打開步驟1中編輯過的lang.po文件添加翻譯文字,形成如下內容:
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR ORGANIZATION
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2007-01-18 09:55+China Standard Time\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <[email protected]>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=gb2312\n"
"Content-Transfer-Encoding: utf8\n"
"Generated-By: pygettext.py 1.5\n"
msgid " Hello world!"
msgstr "世界你好!"
msgid " Python is a good Language."
msgstr "Python 是門好語言."
保存之,運行./Tools/i18n/目錄下的msgfmt.py,Linux下命令為: python msgfmt.py lang.po(widows下的話,將lang.po文件拷貝到./Tools/i18n/目錄下,運行命令行窗口,到改目錄下鍵入:msgfmt.py lang.po),生成lang.mo,將該文件拷貝至./locale/cn/LC_MESSAGES/目錄下,將步驟1生成的lang.po文件直接生成lang.mo文件拷貝到./locale/en/LC_MESSAGES/目錄下,好了一切都准備好了,命令行下運行你的主文件,看看兩個print命令是不是輸出了世界你好! Python 是門好語言.,如果將主文件第五行languages參數置為en,則輸出是Hello world! Python is a good Language.,因為en目錄下lang.mo文件未做任何的翻譯,默認字元串不被替換.
上述實現的方法用在界面編程上可以實現中英文界面的切換,需要作個配置文件選擇中/英文;或者在主文件開始時先獲取操作系統本地語言然後根據獲取結果再設置中/英文,這樣就可以實現軟體語言自適應;如果想實現軟體語言在線切換,對於python來說就比較困難了,需要在軟體中加入界面刷新機制,不推薦,可以在切換中/英文設置後軟體下一次啟動生效(軟體如Ulipad).
Note:
.調用python安裝目錄的 Tools/i18n/pygettext.py抽取所需翻譯的模板
>>> pygettext.py path/to/yourfile.py
將生成一個名為messages.pot的文件
2.生成模板文件後,修改這個模板文件,其中的msgid為鍵值,對應你程序里寫的文本,如:_("New File"),而msgstr為翻譯後的值。還有就是注意修改文件頭部分Content-Type的charset為合適的編碼,比如utf8
3.編寫好模板後,把擴展名修改為.po,運行Tools/i18n/msgfmt.py,生成二進制的資源文件
>>> msgfmt.py messages.po
將生成一個名為messages.mo的文件
4.把這個mo文件放在正確的位置.
比如你在程序中是這樣寫的:
gettext.install('i18ntest', './locale', unicode=True)
gettext.translation('i18ntest', './locale', languages=['cn']).install(True)
那麼你的程序目錄下需要存在./local/cn/LC_MESSAGES/i18ntest.mo
這樣程序啟動時就會讀取這個資源文件,替換對應的文本,實現國際化了。
注意:如果使用utf格式保存,po文件不能有BOM頭。cn目錄是所對應的語言,LC_MESSAGES目錄是gettext.py里要求的,mo文件必須和所定義的域同名,見
gettext.py的mofile = os.path.join(localedir, lang, 'LC_MESSAGES', '%s.mo' % domain)
G. 普通人學python前景如何 有沒有用
【導語】很多人一直有這樣的意識,那就是認為學習python的人必然是層次很高的人,其實普通人也可以學習python的,它本身是一門高級編程語言,利用python進行編程,能夠高效進行數據收集,批量化完成簡單的任務,比如爬蟲採集任務等等,給我們能夠帶來諸多便利,那麼普通人學python前景如何?有沒有用呢?接下來就帶大家來具體了解一下。
1、普通人學Python有沒有用
(1)如果你是從事新媒體相關作業的人員,學習了Python今後,能夠使用爬蟲、收據抓取等技能知道哪些論題近期特別火,因為什麼原因這么火,然後能夠依據這些熱門來寫文章,省去了很多找熱門和創意的時刻。
(2)我們即將邁入人工智慧年代,那麼怎樣才幹緊跟年代潮流呢?那就是從學編程開始,Python是編程世界中最貼近人類言語、最簡練易懂的計算機言語,零基礎也能夠學習。人工智慧年代,誰掌握了數據,誰就掌握了年代的中心命脈。
(3)有利於轉行,現在IT職業開展十分的好,學會了Python就能夠進軍IT職業,不管是男生仍是女生,只要緊跟年代的開展,從事最有遠景的職業,將來才幹有一個好的發錢,才幹具有一個秀麗出路。
2、普通人學python遠景
學習Python今後能夠從事數據剖析作業,不管是什麼職業,做數據剖析的人好像都離不開Python,因為Python能夠協助他們進步作業效率。也能夠從事網路編程作業,Python能夠十分方便的完成網路編程的作業,提供了眾多的解決方案和模塊,能夠十分方便的定製出自己的伺服器軟體。
關於普通人學python前景等等內容,就給大家介紹到這里了,其實Python工程師的崗位需求量還是巨大的,而且呈現出需求量上漲的趨勢,從市場整體需求來看,Python在招聘市場上的流行程度也是在逐步上升的,工資水平也是水漲船高,就業前景非常好,需要的話就趕緊學起來吧。
H. python為什麼這么多框架
Python的五個框架:
Django
Flask是一個微框架,最適合簡單的小項目。該框架基於Jinja 2和Werkzeug開發。這個框架的主要目的是開發一個強大的web應用程序庫。
特點:
· 包含開發調試器和伺服器
· 有豐富的文檔
· 支持安全cookie
· 基於unicode
· 單元測試集成支持
I. python學習,需要有哪些基礎呢
Python學習路線。
第一階段Python基礎與Linux資料庫。這是Python的入門階段,也是幫助零基礎學員打好基礎的重要階段。你需要掌握Python基本語法規則及變數、邏輯控制、內置數據結構、文件操作、高級函數、模塊、常用標准庫模塊、函數、異常處理、MySQL使用、協程等知識點。
學習目標:掌握Python基礎語法,具備基礎的編程能力;掌握Linux基本操作命令,掌握MySQL進階內容,完成銀行自動提款機系統實戰、英漢詞典、歌詞解析器等項目。
第二階段WEB全棧。這一部分主要學習Web前端相關技術,你需要掌握HTML、CSS、JavaScript、jQuery、BootStrap、Web開發基礎、VUE、Flask Views、Flask模板、 資料庫操作、Flask配置等知識。
學習目標:掌握WEB前端技術內容,掌握WEB後端框架,熟練使用Flask、Tornado、Django,可以完成數據監控後台的項目。
第三階段數據分析+人工智慧。這部分主要是學習爬蟲相關的知識點,你需要掌握數據抓取、數據提取、數據存儲、爬蟲並發、動態網頁抓取、scrapy框架、分布式爬蟲、爬蟲攻防、數據結構、演算法等知識。
學習目標:可以掌握爬蟲、數據採集,數據機構與演算法進階和人工智慧技術。可以完成爬蟲攻防、圖片馬賽克、電影推薦系統、地震預測、人工智慧項目等階段項目。
第四階段高級進階。這是Python高級知識點,你需要學習項目開發流程、部署、高並發、性能調優、Go語言基礎、區塊鏈入門等內容。
學習目標:可以掌握自動化運維與區塊鏈開發技術,可以完成自動化運維項目、區塊鏈等項目。
按照上面的Python學習路線圖學習完後,你基本上就可以成為一名合格的Python開發工程師。當然,想要快速成為企業競聘的精英人才,你需要有好的老師指導,還要有較多的項目積累實戰經驗。
自學本身難度較高,一步一步學下來肯定全面且扎實,如果自己有針對性的想學哪一部分,可以直接跳過暫時不需要的針對性的學習自己需要的模塊,可以多看一些不同的視頻學習。
J. python的國際化方案如何處理語境問題
你的問題對於相同的msg_id是無法解決的。只能盡量包含更多的內容,讓它們不同,好在不同的內容中體現不同的內容。i18n不是機器翻譯,無法實現你說的語境功能。而且絕大多數情況下很少出現你說的問題。