pythonfortran
『壹』 求高手解惑,下面幾行python 是什麼意思,能用fortran寫嗎
fortran的文件讀寫似乎比較特別,需要格式固定才效率最高。
時間解析,這個功能我在fortran里還沒有用過,過去用fortran主要是計算。
不過可以自己編寫字元串解析函數。按理以上邏輯都可以用fortrans編寫。
有次高級程序員考試。我發現fortran的題要簡單的多,就做了fortran的。
『貳』 為什麼越來越多的科學家使用Python,Ruby而非Fortran
Fortran語言作為一種上古語言,其實被淘汰也不為過,單就編程語言來講,估計要被很多語言吊打。
但是啊但是,你看,搞科學研究的,不是每個人都可以做吧?很多科學家並不是特別地偏愛Fortran,只是在很多研究領域,早於計算機的發明,對科學家而言,很多時候計算是一個很大的瓶頸。
剛好計算機出來之後,Fortran整出來,科學家們十分高興地找到了能代替他們完成計算的編程語言,然後就一發不可收拾了,慢慢地就積累了一批優秀的代碼(以及更多你看不到的稀爛的代碼),等老闆帶徒弟搞研究,一來已經有很多大量的Fortran代碼可以用,二來你自己搞個其他語言寫的代碼,老闆表示看不懂可如何是好。所以自然地繼承下來(並順便發揚光大了)。
如果Python和Fortran處在同樣的歷史機遇下,我估計現在很多人都不知道有這么個語言了。
和Fortran語言境遇類似的還有一個叫做COBOL,據說現在還有代碼運行在商業應用上。
『叄』 求教做數值計算學什麼語言FortranCPython
我推薦Python。
Python擁有越來越豐富的數值計算的Library,可以支持強大計算功能。最重要的是上手簡單,入門快,編程的效率高。加上,越來越多的人開始關注Python,未來Python可能也會十分熱門,支持大量的庫函數,擁有龐大的社區和升級的支持。加上,Python還可以用來做很多很多有意思的事情,真的很值得一學。
『肆』 Python為什麼能擴展
Python 具有高可擴展性,存在許多使用 C 語言或 Fortran 編寫擴展的方法。必要時,Python 代碼可以直接將這些擴展作為子常式來調用。這部分討論用於構建擴展的一些主要編譯器(絕對不是完整列表)。
相關推薦:《Python基礎教程》
Cython
Cython(不同於 CPython)既是指一種語言,也是指一種編譯器。Cython 語言是添加了 C 語言語法的 Python 語言的超集。Cython 可以在代碼段或完整函數中顯式釋放 GIL。變數和類屬性上的 C 類型聲明以及對 C 函數的調用都使用 C 語法。其餘部分代碼則使用 Python 語法。通過這個混合的 Cython 代碼,Cython 編譯器可生成高效的 C 代碼。任何定期優化的 C/C++ 編譯器都可以編譯此 C 代碼,從而高度優化擴展的運行時代碼,性能接近於原生的 C 代碼性能。
Numba
Numba 是一個動態、即時 (JIT) 且可感知 NumPy 的 Python 編譯器。Numba 使用 LLVM 編譯器基礎架構,生成優化的機器代碼和從 Python 調用代碼的包裝器。與 Cython 不同,編碼使用常規的 Python 語言。Numba 可讀取來自裝飾器中所嵌入注釋的類型信息,並優化代碼。對於使用 NumPy 數據結構的程序,比如數組以及許多數學函數,它可以實現與 C 或 Fortran 語言類似的性能。NumPy 對線性代數和矩陣函數使用硬體加速,利用 LAPACK 和 BLAS 提供額外加速,大大提升了性能,參見 IBM 博客文章C、Julia、Python、Numba 和 Cython 在 LU 因式分解方面的速度比較。
除 CPU 以外,Numba 還能夠使用 GP-GPU 後端。Anaconda, Inc. 是 Python 某個主要發行版的幕後公司,該公司還開發了 Numba 和商業版的 Numba Pro。
Fortran to Python Interface Generator
Fortran to Python Interface Generator (F2Py) 起初為一個獨立的程序包,現在包含在 NumPy 中。F2Py 支持 Python 調用以 Fortran 編寫的數值常式,就好像它們是另一個 Python 模塊一樣。因為 Python 解釋器無法理解 Fortran 源代碼,所以 F2Py 以動態庫文件格式將 Fortran 編譯為本機代碼,這是一種共享對象,包含具有 Python 模塊介面的函數。因此,Python 可以直接將這些函數作為子常式來調用,以原生 Fortran 代碼的速度和性能來執行。
『伍』 請教python與fortran在計算精度方面的差異
精度沒什麼好比的,它和數據類型有關,同樣的數據類型,精度之差可以忽略。
python其實是基於c的,是c的運行庫、c的程序在解釋執行。
python的特長應該在數據挖掘,可不要和fortran去比科學計算。
『陸』 如何編譯用於FORTRAN的Python腳本
python腳本:*.pyf,要給出fortran使用的變數等信息 f2py工具將fortran代碼轉換成共享庫文件按*.so可供python使用, python也可直接調用而不使用*.so,但也要寫介面
『柒』 為什麼Python適合科學計算
原因大約有以下幾點:
1. Python的語法簡單,這對很少接觸編程的搞學術老師的福音。
2. Python相較於其他語言有更豐富的模塊,比如科學計算的numpy。
3. Python越來越流行。
Python(英語發音:/ˈpaɪθən/), 是一種面向對象、解釋型計算機程序設計語言,由Guido van Rossum於1989年底發明,第一個公開發行版發行於1991年,Python 源代碼同樣遵循 GPL(GNU General Public License)協議。
Python語法簡潔而清晰,具有豐富和強大的類庫。它常被昵稱為膠水語言,能夠把用其他語言製作的各種模塊(尤其是C/C++)很輕松地聯結在一起。
常見的一種應用情形是,使用Python快速生成程序的原型(有時甚至是程序的最終界面),然後對其中有特別要求的部分,用更合適的語言改寫,比如3D游戲中的圖形渲染模塊,性能要求特別高,就可以用C/C++重寫,而後封裝為Python可以調用的擴展類庫。需要注意的是在您使用擴展類庫時可能需要考慮平台問題,某些可能不提供跨平台的實現。
它常被昵稱為膠水語言,它能夠很輕松的把用其他語言製作的各種模塊(尤其是C/C++)輕松地聯結在一起。常見的一種應用情形是,使用python快速生成程序的原型(有時甚至是程序的最終界面),然後對其中有特別要求的部分,用更合適的語言改寫。比如3D游戲中的圖形渲染模塊,速度要求非常高,就可以用C++重寫。
『捌』 python 和fortran存儲二進制文件有何區別
python我不知道。
但是fortran並沒有規定存儲二進制文件的格式,只要程序員對二進制足夠了解。可以讀取或寫入任何格式的二進制文件。
『玖』 FORTRAN中調用Python文件
f90的語言標准里沒說有啟動進程的功能,但是多數compiler都提供一個routine可以讓你啟動別的進程,你得看你的compiler的manual。