關於 Python 你需要知道的幾個概念


  • Python

    一種支持面向對象和函數式(面向過程)的高級編程語言

  • CPython

    由 C 語言編譯,一種默認的,通常我們所提及的基於 C 的 Python 的一種實現

  • Cython

    一種 Python 到 C 的一種轉換器,用於對 CPyhton 做模塊擴展,在一定程度上可以有一定的性能提升

  • Jython

    一種設計運行在 Java 平台的 Python 編程語言的實現

  • IronPython

    一種設計運行在 .NET CLR 平台的 Python 編程語言的實現

  • PyPy

    具有即時編譯(JIT)功能的 Python 編程語言的實現


  注:雖然 Python 可以支持多線程的概念,由於 CPython 具有全局解釋鎖(GIL)的概念,這會導致 CPython 的一個進程最多只能使用一個 CPU 內核,不支持單一進程多任務並行執行。

1. 如何鑒別你所使用的 Python 的實現類型:

>>>import platform
>>>print platform.python_implementation()
CPython
>>>

2. Cython 演示

  • 創建 Python 源代碼文件 hello.py
1 #-*- encoding:utf-8 -*-
2 
3 def say_hi():
4     print 'hello world'
  • 使用 Cython 轉換 .py => .c 
$cython hello.py -o hello.c
  • 創建 Setup.py 文件
1 from distutils.core import setup
2 from Cython.Build import cythonize
3 
4 setup(name = 'Hello world app',
5       ext_modules = cythonize('hello.py'))
  • 編譯並構建
$python setup.py build_ext --inplace
  • 安裝
$python setup.py install
  • 測試
$python -c "from hello import say_hi; say_hi();"
hello world

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM