pythonforjava
MessageDigest md = MessageDigest.getInstance("MD5");
FileInputStream fis = new FileInputStream(outputFile);
byte[] dataBytes = new byte[1024];
int nread = 0;
while ((nread = fis.read(dataBytes)) != -1) {
md.update(dataBytes, 0, nread);
}
byte[] mdbytes = md.digest();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < mdbytes.length; i++) {
sb.append(Integer.toString((mdbytes[i] & 0xff) + 0x100, 16).substring(1));
}
String output_md5 = sb.toString();
『貳』 各位大神,請問python嵌入到java中,能畫出Matplotlib的圖
Matplotlib 是一個由 John Hunter 等開發的,用以繪制二維圖形的 Python 模塊。它利用了 Python 下的數值計算模塊 Numeric 及 Numarray,克隆了許多 Matlab 中的函數, 用以幫助用戶輕松地獲得高質量的二維圖形。
『叄』 Python代碼for循環部分,可以做出想java一樣多進程的呢,因為數據量比較大,跑的時間有點長了
frommultiprocessingimportPool
fp2=open("C:\b.csv",'w')
fp2.write('ab'' ')
defprocess_line(line):
line=line.rstrip().lstrip('"').rstrip('"')
print("checkingMD5"+line)
return_code=getResult(line)
ifreturn_code==1:
fp2.write(line+' ')
if__name__=="__main__":
pool=Pool(4)
withopen('C:\a.txt')assource_file:
#
pool.map(process_line,source_file,4)
試試這個。
『肆』 在java代碼中調用python並傳遞參數
需要用到需要用到jython.jar
java example:
public static void main(String[] args) {
//定義參數
String[] args2 = {"arg1","arg2"};
//設置參數
PythonInterpreter.initialize(null, null, args2);
PythonInterpreter interpreter = new PythonInterpreter();
//執行
interpreter.execfile("E:\\jython.py");
System.out.println("----------run over!----------");
}
python的程序:
#!/bin/env python
import time
import sys
argCount = len(sys.argv)
print('before sleep')
time.sleep(5);
print('after sleep')
for str in sys.argv:
print(str)
『伍』 利用python如何處理百萬條數據(適用java新
1、前言
因為負責基礎服務,經常需要處理一些數據,但是大多時候採用awk以及java程序即可,但是這次突然有百萬級數據需要處理,通過awk無法進行匹配,然後我又採用java來處理,文件一分為8同時開啟8個線程並發處理,但是依然處理很慢,處理時長起碼在1天+所以無法忍受這樣的處理速度就採用python來處理,結果速度有了質的提升,大約處理時間為1個小時多一點,這個時間可以接受,後續可能繼續採用大數據思想來處理,相關的會在後續繼續更新。
2、安裝python
第一步首先下載python軟體,在官網可以根據自己情況合理下載,其餘就是下一步搞定,然後在開始裡面找到python的exe,點擊開然後輸入1+1就可以看出是否安裝成功了.如下圖
跨文件引用:
同一個層級python是採用import直接導入文件名的方式,看下一個代碼
其他說明:
其中split和java程序的split一樣,strip是去掉空格換行符等,循環(for in)模式,判斷某個元素是否在數組中存在則直接使用 元素 in
數組
『陸』 Python中for循環遍歷數據有點慢,有沒有像java一樣做一個多進程的呢,如何做呢,有demo嗎謝謝!!
你遍歷的什麼數據啊,是列表,還是文件,python中的for是用c實現的,這個應該不是瓶頸,你可以使用timeit測試一下,看看哪塊比較耗時間,你也可以貼出你的代碼。
如果解決了您的問題請採納!
如果未解決請繼續追問
『柒』 java和python是什麼
兩種編程語言。
區別
一、python虛擬機沒有java強,java虛擬機是java的核心,python的核心是可以很方便地使用c語言函數或c++庫。
二、python是全動態性的,可以在運行時自己修改自己的代碼,java只能通過變通方法實現。python的變數是動態的,而java的變數是靜態的,需要事先聲明,所以java ide的代碼提示功能優於python ide。
三,python的產生幾十年了,幾十年前面向過程是主流,所以用python有好多程序用的是面向過程設計方法,很多概念從c語言過來的,class在python中是後加入的,而java是為了實現沒有指針的c++(當年com組件用的引用記數,java用的虛擬機),主要採用面向對象的設計方法,很多概念是oop的概念。面向過程,相對簡潔直觀,但容易設計出面條程序,面向對象,相對抽象優雅,但容易過度抽象。
四,在實際使用的python入門簡單,但要學會用python幹活,需要再學習python各種庫,pyhton的強大在於庫,為什麼python的庫強大,原因是python的庫可以用python,c語言,c++等設計,再提供給python使用,所以無論gpu運行,神經網路,智能演算法,數據分析,圖像處理,科學計算,各式各樣的庫在等著你用。而java沒有python那麼多的開源庫,很多庫是商業公司內部使用,或發布出來只是一個jar包,看不到原始代碼。python虛擬機因為編譯性沒有java的支持的好(或者說故意這么設計的),一般直接使用源碼(linux),或源碼簡單打個包(如pyexe)。
五、python有很多虛擬機實現,如cython,Pyston,pypy,jython, IronPython等等,適合用於業務語言,或插件語言,或面向領域語言,而java因為虛擬機巨大,很少用於插件語言,發布也不方便。
六、java主要用於商業邏輯強的領域,如商城系統,erp,oa,金融,保險等傳統資料庫事務領域,通過類似ssh框架事務代碼,對商業資料庫,如oralce,db2,sql server等支持較好,軟體工程理念較強,適合軟體工程式的多人開發模式。python主要用於web數據分析,科學計算,金融分析,信號分析,圖像演算法,數學計算,統計分析,演算法建模,伺服器運維,自動化操作,快速開發理念強,適合快速開發團隊或個人敏捷模式。
七、java的商業化公司支持多,如sap,oracle,ibm等,有商業化的容器,中間件,企業框架ejb。python的開源組織支持多,如qt,linux,google,很多開源程序都支持python, 如pyqt,redis,spark等。
八、python用途最多的是腳本,java用途最多的是web,pyhotn是膠水,可以把各類不相關的東西粘在一起用,java是基佬,可以通過軟體工程組成幾百個人的團隊和你pk,商業化氣息重。不過我認為還是python強大,因為可以方便調用c或c++的庫,但軟體工程和商業化運作沒有java好,適合快捷開發。
『捌』 python的for循環問題:實現java語句for(i=0;i<n;i**2)
range沒法跳乘法步數,這樣子吧
foriin[x**2forxinrange(0,int(n**0.5))]:
應該是你想要的效果吧?