Python'da Diziler ve Listeler Nasıl Çalışır?

  • Brian Curtis
  • 0
  • 923
  • 216
reklâm

Diziler ve listeler programlamadaki en yararlı veri yapılarından bazılarıdır - az sayıda kişi bunları gerçekten tam potansiyelleriyle kullanmasına rağmen. Bugün sizlerle bazı basit Python örnekleriyle birlikte temel bilgiler hakkında konuşacağım..

Ön şartlar

Bu kavramları öğrenmek için vaktinden önce bilmeniz gereken çok şey yok. Temel programlama paradigmaları ve Python bilgisi faydalı olacaktır, ancak bu gerekli değildir. Temel Python örneklerimizi okuyun 10 Hızlı Öğrenmenize Yardımcı Olacak Temel Python Örnekleri 10 Hızlı Öğrenmenize Yardımcı Olacak 10 Temel Python Örnekleri Temel python örneklerinin bu makalesi, bazı programlama deneyimine sahip olan ve sadece Python'a en kısa sürede geçiş yapmak isteyenler içindir. mümkün. nereden başlayacağınızı bilmiyorsanız. Python'un işe yaramaz bir dil olduğunu düşünüyorsanız, neden 5 olmasın nedenlerini inceleyin Python Programlamanın Yararsız Olmamasının 5 Sebepleri Python Programlamanın Yararsız Olmama Nedenleri Python - Siz ya onu seversiniz ya da nefret edersiniz. Bir sarkaç gibi bir uçtan diğerine sallanabilirsiniz. Ne olursa olsun, Python kararsız olması zor bir dildir.. .

Aşağıdaki temel fikirler herhangi bir dile uygulanabilirken, Python'daki örnekleri göstereceğim. Öğrenmesi kolay bir dildir ve neler olduğunu anlamak için mükemmel bir platform sağlar. Buna ek olarak, tutorialspoint.com mükemmel bir çevrimiçi Python yorumlayıcısı sunar - istemiyorsanız Python'u yüklemeniz bile gerekmez (eğer yaparsanız, sanal ortamlar için kılavuzumuzu inceleyin Python Sanal'ın Nasıl Kullanılacağını Öğrenin Ortam Python Sanal Ortamının Nasıl Kullanılacağını Öğrenin Deneyimli bir Python geliştiricisi olun veya yeni başlıyor olsanız da, herhangi bir Python projesi için sanal bir ortamın nasıl kurulacağını öğrenmek önemlidir.).

Veri Yapıları

Nedir veri yapısı? En temel düzeyde bir veri yapısı, verileri verimli bir şekilde depolamanın bir yoludur. Veri yapıları karmaşık olmadığı için kafanız karışır. veri tipleri. Veri türleri, derleyiciye (veya Python'un durumunda tercümana) verinin nasıl kullanılması gerektiğini anlatır. Veri yapıları gerçekleştirilebilecek işlemleri belirtir ve genellikle belirli kuralları ve düzenlemeleri uygular.

Bazı duymuş olabilirsiniz doğrusal veri tipleri (elemanlar sıralıdır):

  • Dizi
  • Matris
  • Arama Tablosu

benzer şekilde, listeleri genellikle nasıl çalıştıklarını düzenleyen kurallar ve yöntemler içerir. Bazı yaygın listeler:

  • Bağlantılı liste
  • İki Katlı Bağlantılı Liste
  • Dizi Listesi veya Dinamik Dizi

Farklı veri yapılarının bir bolluk var. Duymuş olabilirsin ikili ağaçlar, grafikleri, veya karmaları. Bugün temelleri tartışacağım ancak rahat olduğunuzda daha fazla bilgi edinmek isteyebilirsiniz..

Dizi

Baştan başlayalım. Bir dizi (ilgili) değerlerin basit bir koleksiyonudur. Bu değerlere elementler denir. Genellikle nesneler veya diğer listeler dahil olmak üzere istediğiniz herhangi bir veri türü olabilir! Dizilerle ana uyarı, tüm verilerin aynı olması gerektiğidir - karışık dizeleri ve tamsayıları saklayamazsınız. Sen neredeyse her zaman kaç tane eleman saklamak istediğinizi belirtmeniz gerekir. Değişken boyut veya dinamik diziler var, ancak sabit uzunluklu dizilerle başlamak daha kolaydır.

Python işleri biraz zorlaştırıyor. İşleri sizin için çok kolaylaştırıyor, ancak her zaman veri yapılarının katı tanımlarına bağlı kalmıyor. Python'daki çoğu nesne genellikle listelerdir, bu nedenle bir dizi oluşturmak aslında daha fazla iştir. İşte bazı başlangıç ​​kodu:

diziden içe aktarma dizi numaraları = dizi ('i', [2, 4, 6, 8]) baskı numaraları [0]

İlk satır dizi modül - dizilerle çalışmak gerekli. İkinci satır, adında yeni bir dizi oluşturur. sayılar ve 2, 4, 6 ve 8 değerleriyle başlatır. Her öğeye bir tamsayı değer denilen anahtar veya indeks. Anahtarlar başlangıçta sıfır, yani numaraları [0] ilk elemana erişecek (2):

Ne olduğunu merak ediyor olabilirsiniz 'ben' için kullanılır. Bu bir Tür kodu Bu Python'a dizinin tamsayıları depolayacağını söyler. Python'da bu tür bir şeye normal olarak ihtiyaç duyulmazdı “unpythonic”). Bunun nedeni basit. Python'daki diziler, işletim sisteminizin altında yatan C dizilerinde çok ince bir sargıdır. Bu, hızlı ve istikrarlı oldukları anlamına gelir ancak Python sözdizimine her zaman uymayabilirler.

Karışık dizileri bu dizilerde depolayamazsınız. Dize saklamak istediğini söyle “makeuseof.com”:

numbers = array ('i', [2, 4, 6, "makeuseof.com"])

Buna izin verilmeyecek ve bir istisna atılacak:

Tüm öğeleri şöyle yazdırabilirsiniz:

baskı numaraları

Dizi elemanlarına erişmenin bu yöntemi iyi çalışır ve doğru görev için mükemmeldir. Bunun için iyi olmayan şey dizinin tamamına erişmek. Programcılar doğal olarak tembeldir, bu yüzden bakımı daha kolaylaştırabilir ve kopyala ve yapıştır çabasını azaltabilirsem daha iyi, daha iyi kod yazacağım.

Her programlama dili, liste öğeleri üzerinde yineleme (döngü) için mükemmel olan bir tür döngü uygulayacaktır. En yaygın döngüler süre ve için. Python sağlayarak bir şeyleri kolaylaştırır için döngü:

Rakamlarla sayı için: baskı numarası

Öğelere anahtarlarıyla nasıl erişmediğinize dikkat edin. Bu, bir diziyle çalışmanın çok daha iyi bir yoludur. Bir listeyi yinelemenin alternatif bir yolu için döngü:

i aralığında (len (sayılar)): baskı sayıları [i]

Bu, dizideki öğelerin sayısını belirtmek zorunda olmanıza rağmen, önceki örnekle tam olarak aynı şeyi yapar.len (araba)), geçen ile birlikte ben dizinin anahtarı olarak. Bu neredeyse tam olarak için döngüler koşmak. Bu yol biraz daha fazla esneklik sağlar ve biraz daha hızlıdır ( için döngüler yeterince hızlı çoğunluk Zamanın

Listeler

Artık dizilerin nasıl çalıştığını bildiğinize göre, bir listeye bakalım. Bazen insanlar birbirlerinin yerine farklı terminoloji kullanıyorlar ve listelerken kafa karıştırıcı olabilir. Hangi diziler… tür.

Bir liste özel bir dizi türüdür. En büyük fark, listelerin içerebilmesidir karışık türleri (unutmayın, dizilerin aynı türde öğeler içermesi gerekir). Python'da listeler çok kolaydır:

araba = ['Ford', 'Austin', 'Lancia']

Nasıl içe aktarmanız gerekmediğine dikkat edin. dizi modül?

Bu sözdizimi, arabalar adında bir liste bildirir. Köşeli parantez içinde, listenin her bir elemanı ilan edilir. Her öğe virgülle ayrılır ve her öğe bir dize olduğundan, bunları tırnak işaretleri içinde bildirirsiniz. Python bunun bir nesne olduğunu bilir. baskı deyim listenin içeriğini çıkartacaktır:

baskı arabaları

Dizideki gibi, döngüleri kullanarak liste öğelerini yineleyebilirsiniz:

arabaları için

Listelerin asıl parti hilesi karışık türdür. Devam et ve bazı ekstra veriler ekle:

araba = ['Ford', 'Austin', 'Lancia', 1, 0.56]

Bu Python için sorun değil - bir istisna bile yaratmadı:

Listeye yeni öğeler eklemek kolaydır (dizilerde mümkün olmayan bir şey):

araba = ['Ford', 'Austin'] Matbaa arabaları cars.append ('Lancia') Matbaalar

İki listeyi de bir araya getirebilirsiniz:

araba = ['Ford', 'Austin'] baski arabalari other_cars = ['Lotus', 'Lancia'] cars.extend (other_cars) baski arabalari

Kullanarak öğeleri kaldırmak kadar kolay Kaldır sözdizimi:

araba = ['Ford', 'Austin', 'Lotus', 'Lancia'] baski arabalari cars.remove ('Ford') baski arabalari

Bu, Python'daki listelerin ve dizilerin temellerini kapsar. Python ile Google E-postaları Nasıl Okunup Yazılır Python ile Google E-postaları Nasıl Okunur ve Yazılır Python ile Google E-postaların Nasıl Okunup Yazıldığını Öğrenmek ve Kullanmak Kolay Olabilir . Bu makalede, size Python'u kullanarak Google E-Tablolar'ı nasıl okuyacağınızı ve yazacağınızı göstereceğim. , json verilerini okuma JSON kullanarak iletişim kurmak için Python ve JavaScript nasıl edinilir JSON kullanarak iletişim kurmak için Python ve JavaScript nasıl edinilir Bugün size JavaScript'ten Python'a veri göndermek için JSON nasıl kullanılacağını göstereceğim. İhtiyacınız olan tüm kod ile birlikte bir web sunucusunun nasıl kurulacağını anlatacağım. . Belki bazı özel kısayol düğmelerini kullanmak için yeni becerilerinizi koyabilirsiniz Arduino ile Kendi Özel Kısayol Düğmelerini Yapın Bir Arduino ile Kendi Özel Kısayol Düğmelerini Yap Mütevazı Arduino bir çok şey yapabilir, ama onun taklit edebileceğini biliyor muydunuz? USB klavye? Uzun klavye kısayollarını bu basit devre ile tek bir özel kısayol tuşunda birleştirebilirsiniz. . Farklı bir programlama dili olmasına rağmen, bu dizi ilkeleri hala geçerlidir.

Yeni bir şey öğrendin mi? Biraz daha karmaşık içerik görmek ister misiniz? Aşağıdaki yorumlardaki düşüncelerinizi bize bildirin!




Henüz no comments

Modern teknoloji hakkında basit ve uygun fiyatlı.
Modern teknoloji dünyasında rehberiniz. Her gün bizi çevreleyen teknolojileri ve araçları nasıl kullanacağınızı ve Internet'te ilginç şeyleri nasıl keşfedeceğinizi öğrenin.