PHP陣列是從PY對象不同:
- PHP密鑰可以是整數或字符串(締合),
- 當值被附加到陣列,數字鍵自動是 之前分配將鍵/值對附加到數組。 所分配的相關聯的密鑰具有等於所述陣列的內部數字迭代索引關鍵字的最大 加1的整數值,在串
- 數值整數鍵被鑄造成整體,
- 插入到陣列的順序被保留。鍵/值對是根據鍵的插入順序迭代的 。我們可以使用Python OrderedDict效仿,
- PHP
array[] = 5
被翻譯到Python array.append(5)
或 array[None] = 5
,
- 迭代器的索引鍵都是通過PHP內置的功能操作,或 按引用傳遞,並抄送上寫政策。
我想插一下我剛發佈的產品pyx.php
Python模塊。 模塊中有一個模擬PHP數組的Python類array
。 我們的PHP數組的Python模擬使用OrderedDict實例變量, 其中array._obj是一個OrderedDic來存儲數組的所有元素,並使用自定義指針實例 變量跟蹤它們的插入順序。嘗試:
$ git clone https://github.com/wordpy/pyx/
$ python # or ipython`
>>> import pyx.php as Php; array = Php.array
>>> arr1 = array((0,'1-0'),('a','1-a'),('b','1-b'),)
>>> arr2 = array((0,'2-0'),( 1,'2-1'),('b','2-b'),('c','2-c'),)
>>> arr1 + arr2 # same as: Php.array_plus(arr1, arr2), see below
>>> Php.array_merge(arr1, arr2)
>>> import pyx.php as Php; array = Php.array
>>> Arr0 = array() # Arr0._obj is an empty OrderedDict()
>>> Arr1 = array(('a',11), 'zzz', (99,99), 22, 33, (2,22))
>>> Arr1
array(6) {
['a']=> <int> 11
[0]=> <str> zzz
[99]=> <int> 99
[100]=> <int> 22
[101]=> <int> 33
[2]=> <int> 22
}
zip()
適用於不同len的數組!
>>> for i,j in zip(array(1,2,3,4), array(11,22,33)):
... print(i,j)
1 11
2 22
3 33
>>> for i,j in zip(array(1,2), array(11,22,33)):
... print(i,j)
1 11
2 22
的pyx.php
用Cython模塊array()
提供了幾乎一切 一個PHP數組()提供,以及許多其他的方法。 請參閱https://wordpy.com/pyx/php/。
目前,pyx.php
僅適用於運行64位Linux的Python 3.x。 有很多 請求時,可以編譯Python 2.x,Mac或其他平臺。