# Limitations
> 原文: [http://docs.cython.org/en/latest/src/userguide/limitations.html](http://docs.cython.org/en/latest/src/userguide/limitations.html)
此頁面用于列出 Cython 中的錯誤,這些錯誤使得編譯代碼的語義與 Python 中的語義不同。大多數缺失的功能已在 Cython 0.15 中修復。未來的 Cython 版本計劃提供完整的 Python 語言兼容性。目前,問題跟蹤器可以提供我們知道并希望修復的偏差的概述。
[https://github.com/cython/cython/labels/Python%20Semantics](https://github.com/cython/cython/labels/Python%20Semantics)
以下是我們可能無法解決的差異列表。大多數這些事情更多地落入實現細節而不是語義,我們可能決定不修復(或需要一個-pedantic 標志來獲取)。
## 嵌套元組參數解包
```py
def f((a,b), c):
pass
```
這在 Python 3 中被刪除了。
## 檢查支持
雖然很有可能在 Cython 自己的函數類型中模擬函數的接口,并且最近的 Cython 版本在這里看到了一些改進,但“inspect”模塊并沒有將 Cython 實現的函數視為“函數”,因為它測試了對象類型顯式而不是比較抽象接口或抽象基類。這對使用 inspect 來檢查函數對象的代碼有負面影響,但是需要對 Python 本身進行更改。
## 堆棧幀
目前,我們生成假追蹤作為異常傳播的一部分,但不填寫本地并且無法填寫 co_code。為了完全兼容,我們必須在函數調用時生成這些堆棧幀對象(具有潛在的性能損失)。我們可以選擇啟用此功能進行調試。
## 推斷文字的身份與平等
```py
a = 1.0 # a inferred to be C type 'double'
b = c = None # b and c inferred to be type 'object'
if some_runtime_expression:
b = a # creates a new Python float object
c = a # creates a new Python float object
print(b is c) # most likely not the same object
```
- Cython 3.0 中文文檔
- 入門
- Cython - 概述
- 安裝 Cython
- 構建 Cython 代碼
- 通過靜態類型更快的代碼
- Tutorials
- 基礎教程
- 調用 C 函數
- 使用 C 庫
- 擴展類型(又名.cdef 類)
- pxd 文件
- Caveats
- Profiling
- Unicode 和傳遞字符串
- 內存分配
- 純 Python 模式
- 使用 NumPy
- 使用 Python 數組
- 進一步閱讀
- 相關工作
- 附錄:在 Windows 上安裝 MinGW
- 用戶指南
- 語言基礎
- 擴展類型
- 擴展類型的特殊方法
- 在 Cython 模塊之間共享聲明
- 與外部 C 代碼連接
- 源文件和編譯
- 早期綁定速度
- 在 Cython 中使用 C ++
- 融合類型(模板)
- 將 Cython 代碼移植到 PyPy
- Limitations
- Cython 和 Pyrex 之間的區別
- 鍵入的內存視圖
- 實現緩沖協議
- 使用并行性
- 調試你的 Cython 程序
- 用于 NumPy 用戶的 Cython
- Pythran 作為 Numpy 后端