Anlamak için: PHP Dizisinden Python?

4 Cevap php

This is Common task In PHP and other programming languages.I moved from PHP developer. I want to make sure with this collections. Anyone have who good in python please help me to understand clearly . This is my collections from PHP code.

<?php
$php = array(1,2,3,4,5,6,7,8,9,10);
for ($i = 0; $i < 10 ; $i ++)
echo $php[$i]."<br>";
?>

=> Python Nedir?

<?php

for ($i = 0; $i < 10 ; $i ++)
echo $php[$i] = $i +1 ;
?>

=> Python Nedir?

<?php
$php = array(1,2,3,4,5,6,7,8,9,10);
foreach ($php as $value)
echo $value."<br>";
?>

=> Python Nedir?

<?php
$arr = array(1, 2, 3, 4);
foreach ($arr as &$value) {
    $value = $value * 2;
}
// $arr is now array(2, 4, 6, 8)
?>

=> Python Nedir?

<?php
$arr = array("mot"=>"one", "hai"=>"two","ba"=> "three");
foreach ($arr as $key => $value) {
    echo "Key: $key; Value: $value<br />\n";
}
?>

=> Python Nedir?

<?php
$arr = array("one", "two","three");
while (list($key, $value) = each($arr)) {
    echo "Key: $key; Value: $value<br />\n";
}
?>

=> Python Nedir?

<?php
$arr = array("one", "two","three");
while ($element = each($arr)) {
    echo "Key: $element['key']; Value: $element['value']<br />\n";
}
?>

=> Python Nedir?

<?php
$products = array( array("ITL","INTEL","HARD"),
                        array("MIR", "MICROSOFT","SOFT"),
                        array("Py4C", "pythonkhmer.wordpress.com","TUTORIAL")
                         );
for ($row = 0; $row < 3; $row++)
{
    for ($col = 0; $col <3; $col++)
        {
         echo "|".$products[$row][$col];
         }
echo "<br>";
}
?>

=> Python Nedir?

4 Cevap

Tüm bu gerçekten oldukça açıktır. Ben sadece bunları yapmak için Pythonic yolları sayıyorum

Example 1

PHP

$php = array(1,2,3,4,5,6,7,8,9,10);
for ($i = 0; $i < 10 ; $i ++)
echo $php[$i]."<br>";

Python (genellikle iterate yerine indeksi ile erişim Python, listelerde üzerinde):

lst = [1,2,3,4,5,6,7,8,9,10]
for item in lst:
    print str(item) + "<br>"

Example 2

for ($i = 0; $i < 10 ; $i ++)
echo $php[$i] = $i +1 ;

Python:

lst = range(1, 11)
for item in lst:
    print item

Ya da belki:

lst = []
for i in xrange(10):
    lst.append(i + 1)
    print lst[-1]     # prints out last element

Example 3

$php = array(1,2,3,4,5,6,7,8,9,10);
foreach ($php as $value)
echo $value."<br>";

1 ile aynı

Example 4

$arr = array(1, 2, 3, 4);
foreach ($arr as &$value) {
    $value = $value * 2;
}

Python:

lst = [1, 2, 3, 4]
lst = [val*2 for val in lst]

Example 5

$arr = array("mot"=>"one", "hai"=>"two","ba"=> "three");
foreach ($arr as $key => $value) {
    echo "Key: $key; Value: $value<br />\n";
}

Python (yani {...} Python bir dict [sözlük] değil, bir liste / oluşturur unutmayın):

dct = {'mot': 'one', 'hai': 'two', 'ba': 'three'}
for key, value in dct.iteritems():
    print "Key: %s; Value: %s<br />" % (key, value)

Example 6

$arr = array("one", "two","three");
while (list($key, $value) = each($arr)) {
    echo "Key: $key; Value: $value<br />\n";
}

Python:

lst = ['one', 'two', 'three']
for key, value in enumerate(lst):
    print "Key: %d; Value: %s<br />" % (key, value)

Example 7

$arr = array("one", "two","three");
while ($element = each($arr)) {
    echo "Key: $element['key']; Value: $element['value']<br />\n";
}

Bu eşdeğer doğrudan Python yoktur.

Example 8

$products = array( array("ITL","INTEL","HARD"),
                        array("MIR", "MICROSOFT","SOFT"),
                        array("Py4C", "pythonkhmer.wordpress.com","TUTORIAL")
                         );
for ($row = 0; $row < 3; $row++)
{
    for ($col = 0; $col <3; $col++)
    {
        echo "|".$products[$row][$col];
    }
    echo "<br>";
}

Python:

products = [['ITL', 'INTEL', 'HARD'],
    ['MIR', 'MICROSOFT', 'SOFT'],
    ['Py4C', 'pythonkhmer.wordpress.com', 'TUTORIAL']]

for product in products:
    for item in product:
        print '|' + item
    print '<br>'

Ya da belki bir daha Pythonic sürümü:

for product in products:
    print '|%s<br>' % ('|'.join(product))

"Python nedir?", Oldukça felsefi bir soru, her zaman bir güne başlamak için harika bir yoldur. I is in Python iyi Python (tip import this interaktif bir kabuk) ve Zen tarafından cevap ne olabilir düşünüyorum:

  • Güzel çirkin daha iyidir.
  • Açık örtülü daha iyidir.
  • Basit karmaşık daha iyidir.
  • Karmaşık komplike daha iyidir.
  • Daire iç içe daha iyidir.
  • Seyrek yoğun daha iyidir.
  • Okunabilirlik sayar.
  • Özel durumlar kurallarını kırmak için yeterli özel değildir.
  • Pratiklik saflığı yener rağmen.
  • Hatalar sessizce geçmek asla.
  • Açıkça susturuldu sürece.
  • Belirsizlik karşısında, tahmin günaha reddediyorum.
  • Ve tercihen sadece bir - - Bunu yapmak için bariz yolu bir olmalıdır.
  • Bu şekilde ilk başta Hollandalı olmadıkça belirgin olmayabilir de.
  • Şimdi asla daha iyidir.
  • Genellikle right şimdi daha iyidir asla rağmen.
  • Uygulama açıklamak zor ise, bu kötü bir fikir.
  • Uygulama açıklamak kolay ise, bu iyi bir fikir olabilir.
  • Ad harika bir fikir korna çalan biri olan - en olanların daha yapalım!

Üzgünüz, karşı edemedim. Eğer sormak istedim soruyu cevaplamak için, ben, Python documentation hakkında özel bölümü sizi yönlendirecektir looping techniques ile bağlantılı olarak lutz.

Belgelerinde sözdizimi tamamen sizi şaşırtmak için yönetmek sürece (Ben bunu şüphe olsa) bir döngü Python nasıl tanımlandığını göreceksiniz. Ve o, sen, senin PHP için kullanılan döngüler (söz dizimi) ne kadar farklı olduklarını, tanımı gereği, anlayacaksınız anlamış kez.

Hala memnun değil? Hmm ... Ben öğretici again okumalısınız sanırım. Sonra, geri gel ve belirli cevaplar verim verebilecek özel sorular sormak. Sen alışkanlık bir soru bu geniş için herhangi bir gümüş kurşun bulabilirsiniz.

Sen the Python tutorial döngüler için bir giriş okuyabilirsiniz.

Bu soru demişti bir bilge adam hatırlatıyor, "Give a man a fish; you have fed him for today. Teach a man to fish; and you have fed him for a lifetime..."