Şebeke |
Açıklama |
Örnekleri |
Mantıksal VE operatörü. Her iki işlenen de doğruysa koşul doğru olacaktır. |
True ve True eşittir True. Doğru ve Yanlış eşittir Yanlış. False ve True eşittir False. False ve False, False'a eşittir. |
|
Mantıksal operatör "VEYA". İşlenenlerden en az biri doğruysa, tüm ifade doğru olacaktır. |
True veya True eşittir True. Doğru veya Yanlış eşittir Doğru. False veya True eşittir True. False veya False, False'a eşittir. |
|
Mantıksal operatör "DEĞİL". İşlenenin boole değerini tersine çevirin. |
True değil, False'a eşittir. Yanlış değil, Doğrudur. |
Python. Şube operatörleri. Koşullu operatör. Çoktan seçmeli operatör. Döngü organizasyon yapıları.
Şube operatörü (koşullu ifade, koşullu ifade)- bir operatör, yalnızca bazı mantıksal ifadeler doğruysa belirli bir komutun (komutlar dizisinin) yürütülmesini veya belirli bir komutun değerine bağlı olarak birkaç komuttan (komut kümesi) birinin yürütülmesini sağlayan bir programlama dili tasarımı ifade.
Dallanma operatörü if .... else
Koşullu operatör, bazı mantıksal ifadelerin (koşul) "true" true değerini alması koşuluyla, belirli komutların yürütülmesini uygular. Çoğu programlama dilinde, koşullu bir ifade if anahtar kelimesiyle başlar.
Çoktan seçmeli operatör
Çoktan seçmeli ifade, bazı elif tamsayı değişkenlerinin hangi değere sahip olacağına bağlı olarak programın farklı bölümlerini yürütmenize izin verir.
while ve for döngüleri
while ifadesi, evrensel döngüleri organize etmenin bir yolunu sağlar;
for ifadesi, dizilerdeki öğeleri geçmek ve yürütmek için tasarlanmıştır.
her biri için program kodu bloğu.
14. Python. Tuple'lar, sözlükler, listeler. dilimler
Bir demet aslında değişmez bir listedir.
Listeler varken demetlere neden ihtiyaç duyulur?
Kusursuz. Yani, demet hem kasıtlı (ki bu kötü) hem de tesadüfi (ki iyi) değişikliklerden korunur.
Aynı kötü şöhretli Tuple () işlevini kullanarak yinelenebilir bir nesneden bir demet oluşturabilirsiniz.
>>> a = demet ("merhaba, dünya!")
("Selam Dünya", "! ")
Python'da sözlükler- anahtarla erişime sahip rastgele nesnelerin sırasız koleksiyonları. Bunlara bazen ilişkisel diziler veya karma tablolar da denir.
Sözlük yöntemleri
dikte.temizle() - sözlüğü temizler.
dikte.kopya() - sözlüğün bir kopyasını döndürür.
sınıf yöntemi dict.fromkeys(seq [, değer]) - seq ve değerden anahtarlarla bir sözlük oluşturur (varsayılan Yoktur).
dict.get(anahtar [, varsayılan]) - anahtarın değerini döndürür, ancak mevcut değilse bir istisna oluşturmaz, ancak varsayılanı döndürür (varsayılan olarak Yok).
dict.items() - çiftleri (anahtar, değer) döndürür.
dict.keys() - sözlükteki anahtarları döndürür.
dict.pop(anahtar [, varsayılan]) - anahtarı kaldırır ve değeri döndürür. Anahtar yoksa, varsayılanı döndürür (varsayılan olarak bir istisna atar).
dict.popitem() - bir çifti (anahtar, değer) kaldırır ve döndürür. Sözlük boşsa KeyError atar. Sözlüklerin sırasız olduğunu unutmayın.
dict.setdefault(anahtar [, varsayılan]) - anahtarın değerini döndürür, ancak mevcut değilse, bir istisna oluşturmaz, ancak varsayılan değere sahip bir anahtar oluşturur (varsayılan olarak Yok).
dikte.güncelleme() - diğerinden (anahtar, değer) çiftleri ekleyerek sözlüğü günceller. Mevcut anahtarların üzerine yazılır. Yok döndürür (yeni bir sözlük değil!).
dikt.değerler() - Sözlükteki değerleri döndürür.
Listeler nedir?
Python'daki listeler, rastgele türlerdeki nesnelerin değiştirilebilir koleksiyonlarıdır (neredeyse bir dizi gibi, ancak türler farklı olabilir).
Listeleri kullanmak için onları oluşturmanız gerekir. Liste oluşturmanın birkaç yolu vardır. Örneğin, yerleşik işlev listesi : ile yinelenebilir herhangi bir nesneyi (bir dize gibi) işleyebilirsiniz.
Liste yöntemleri tablosu
Yöntem Ne yapar
list.append (x) Listenin sonuna bir öğe ekler
list.extend (L) L'nin tüm öğelerini sonuna ekleyerek listeyi genişletir
list.insert (i, x) i-inci öğeye x değerini ekler
list.remove (x) Listedeki x değerine sahip ilk öğeyi kaldırır
list.pop ([i]) i-th öğesini kaldırır ve döndürür. Dizin belirtilmemişse, son öğe kaldırılır
list.index (x,]) İlk öğenin konumunu x değeriyle baştan sona döndürür
list.count (x) x değerine sahip öğelerin sayısını verir
list.sort () Listeyi bir işleve göre sıralar
list.reverse () Listeyi genişletir
list.copy () Bir listenin sığ bir kopyası (python 3.3'te yeni)
list.clear () Listeyi temizler (python 3.3'te yeni)
dilimler
Python'da dizinlerin yanı sıra dilimler de vardır.
item - bir ADIM adımıyla BAŞLANGIÇ numarasından STOP'a (bu dahil değil) bir dilim alır. Varsayılan olarak, BAŞLAT = 0, DUR = nesne uzunluğu, ADIM = 1. Buna göre, bazı (ve muhtemelen tüm) parametreler atlanabilir.
>>> bir =
Ayrıca, tüm bu parametreler negatif olabilir:
>>> bir =
>>> bir [:: - 1]
>>> bir [-2 :: - 1]
>>> bir
Son örnekte, BAŞLAT'tan beri boş bir liste elde edilir.< STOP, а STEP отрицательный. То же самое произойдёт, если диапазон значений окажется за пределами объекта:
>>> bir =
>>> bir
Ayrıca, dilimleri kullanarak, yalnızca öğeleri çıkarmakla kalmaz, aynı zamanda öğe ekleyip kaldırabilirsiniz (elbette, yalnızca değiştirilebilir diziler için).
>>> bir =
>>> bir =
26 10.2017
Belirli sayılar veya işlevlerle etkileşim, bir tür işlem gerektirir. Toplama, çıkarma, çarpma, bölme diyelim. Örneğin aritmetik kök ve üs alma. Python ifadeleri önemlidir. Onlar olmadan, hiçbir program olmazdı. Ve mevcut tüm operatörleri listelemek için bütün bir bölüm vurgulanmıştır.
Bu yazıda şunları öğreneceksiniz:
Herkese merhaba, okuyucular, konuklar ve arkadaşlar, Gridin Semyon sizlerle. Geçenlerde abonelerim arasında küçük bir anonim anket yaptım. Veritabanıma 35 kişi üye oldu. Mektupların yalnızca yarısı okundu ve ankete yalnızca üç kişi yanıt verdi. Ama biliyorsun, bu benim için çok büyük bir sonuç. Sonuçta, tek bir yerde durmamanız güzel.
Aslında blog geliştirme konusunda çok fazla fikrim ve düşüncem var. Uzun zamandır PLC'lere dayalı ev yapımı ürünler ve Raspberry PI hakkında bir bölüm açmayı planlıyorum. Sadece projelerimi değil sitede yayınlamak istiyorum. Ama aynı zamanda, kesinlikle parasal bir ödül ve sosyal ile doğrudan bir bağlantı için diğer yazarların projeleri. ağlar.
Ayrıca şu bölümleri de açacağım:
- Robotik haberleri;
- Quadrocopters;
- Kütüphaneler;
- Robot mekaniği;
Yarışmalar, yarışmalar ... Herkes ödülleri, ikramiyeleri ve hediyeleri sever. Ben de seviyorum, ancak hiçbir yere katılmadım. Henüz böyle bir vakam olmadı. Kesinlikle yarışmalar düzenleyeceğim.
Hala 1 puanla baş edemiyorum. Kaliteli makaleler yazmak zaman alır. Şimdiye kadar her şeyi optimize etmek ve zamanında uyum sağlamak mümkün olmadı.
Aslında çok çeşitli konular var. Konu çok yönlü ve kapsamlı. Yavaş yavaş kapatacağız. Ve pratik örnekleri analiz edin. Ben daha çok bir uygulayıcıyım.
Biliyor musun, kaynağımın işe yaramaz olmaması çok güzel. Birine fayda sağladığın çok hoş bir duygu. Bu, sitede çalışmak ve devam etmek için çok motive edici. arkadaşlar da teşekkür ederim. Önümüzdeki birkaç yıl boyunca siteyi alakalı tutmaya çalışıyorum.
Operatör nedir?
Operatörler, sayılarla veya başka bir işleve bir işlev atamak için bazı özel haritalar ve eylemler olarak anlaşılır. Basit bir ifadeyle, 4 + 5 = 9. Sayılara işlenenler ve "+" ve "=" operatörleri denir. Eh, genel olarak, böyle bir şey.
Dilde birkaç türü vardır. Eh, diğer herhangi bir dilde olduğu gibi.
- aritmetik operatörler;
- karşılaştırma operatörleri (karşılaştırma veya ilişki operatörleri);
- atama operatörleri;
- mantıksal operatörler;
- bitsel operatörler;
- üyelik operatörleri;
- kimlik operatörleri
Aritmetik operatörler
Şebeke | Açıklama | Örnekleri |
---|---|---|
+ | Toplama - Operatörün soluna ve sağına değerler ekler | 15 + 5, 20 ile sonuçlanır 20 + -3 sonuç 17 13.4 + 7 sonuç 20.4 |
— | Çıkarma - Sağ işleneni soldan çıkarır | 15 - 5, 10 ile sonuçlanır 20 - -3 ile sonuçlanan 23 13.4 - 7, sonuç olarak 6.4 |
* | Çarpma - İşlenenleri çarpar | 5 * 5, 25 ile sonuçlanır 7 * 3.2 sonuç 22.4'tür - 3 * 12 ile sonuçlanan -36 |
/ | Bölme - Sol işleneni sağa böler | 15/5 sonuç 3 5/2, 2 ile sonuçlanır (Python 2.x sürümünde iki tamsayıyı bölerken sonuç bir tamsayı olacaktır) 5.0 / 2 sonuç 2.5 olacaktır ("Doğru" sonucu elde etmek için en az bir işlenen bir kayan nokta olmalıdır) |
% | Modulo Division - Sol işleneni sağ işlenene böler ve kalanı döndürür. | %6 2 0 ile sonuçlanacak %7 2, 1 ile sonuçlanır %13,2 5 sonucunda 3,2 |
** | Üs - Sol işleneni sağın gücüne yükseltir | 5 ** 2, 25 ile sonuçlanır 2 ** 3 sonuç 8 - 3 ** 2, -9 ile sonuçlanır |
// | Tamsayı bölümü - Sonucun yalnızca tamsayı kısmının döndürüldüğü bölüm. Virgülden sonraki kısım atılır. | 12 // 5, 2 ile sonuçlanacak 4 // 3, 1 ile sonuçlanır 25 // 6, 4 ile sonuçlanır |
Karşılaştırma Operatörleri
Şebeke | Açıklama | Örnekleri |
---|---|---|
== | Her iki işlenenin de eşit olup olmadığını kontrol eder. Evet ise, o zaman koşul gerçek olur. | 5 == 5, True ile sonuçlanacak True == False, False ile sonuçlanır "Merhaba" == "merhaba" True ile sonuçlanacak |
!= | 12! = 5, True ile sonuçlanır False! = False, False ile sonuçlanır "Merhaba"! = "Merhaba" True ile sonuçlanacak |
|
<> | Her iki işlenenin de eşit olup olmadığını kontrol eder. Değilse, koşul gerçek olur. | 12 <>5 True ile sonuçlanır. Görünüşe göre! = Operatör |
> | Sol işlenenin değerinin sağ işlenenin değerinden büyük olup olmadığını kontrol eder. Evet ise, o zaman koşul gerçek olur. | 5> 2, True ile sonuçlanacaktır. True> False, True ile sonuçlanır. "A"> "B" False ile sonuçlanır. |
< | Sol işlenenin değerinin sağ işlenenin değerinden küçük olup olmadığını kontrol eder. Evet ise, o zaman koşul gerçek olur. | 3 < 5 в результате будет True. NS< False в результате будет False. "A"< «B» в результате будет True. |
>= | Sol işlenenin değerinin sağ işlenenin değerinden büyük veya ona eşit olup olmadığını kontrol eder. Evet ise, o zaman koşul gerçek olur. | 1> = 1, True ile sonuçlanacaktır. 23> = 3.2, True ile sonuçlanır. "C"> = "D" False ile sonuçlanır. |
<= | Sol işlenenin değerinden sağ işlenenin değerinden küçük veya ona eşit kontrol eder. Evet ise, o zaman koşul gerçek olur. | 4 <= 5 в результате будет True. 0 <= 0.0 в результате будет True. — 0.001 <= -36 в результате будет False. |
atama operatörleri
Şebeke | Açıklama | Örnekleri |
---|---|---|
= | Sağdaki işlenenin değerini soldakine atar. | c = 23 değişkeni 23 değerine atayacaktır. |
+= | Sağdaki işlenenin değerini soldakine ekleyin ve bu toplamı soldaki işlenene atayın. | c = 5 bir = 2 c + = a şuna eşittir: c = c + a. c eşittir 7 |
-= | Sağ işlenenin değerini soldan çıkarır ve sonucu sol işlenene atar. | c = 5 bir = 2 c - = a şuna eşittir: c = c - a. c eşittir 3 |
*= | Sağ işleneni sol işlenenle çarpar ve sonucu sol işlenene atar. | c = 5 bir = 2 c * = a şuna eşittir: c = c * a. c 10 olacak |
/= | Sol işleneni sağa böler ve sonucu sol işlenene atar. | c = 10 bir = 2 c / = a şuna eşittir: c = c / a. c eşittir 5 |
%= | Modulo işlenenlerini böler ve sonucu soldakine atar. | c = 5 bir = 2 c% = a şuna eşittir: c = c % a. c 1'e eşit olacak |
**= | Sol işleneni sağ işlenenin gücüne yükseltir ve sonucu sol işlenene atar. | c = 3 bir = 2 c ** = a şuna eşittir: c = c ** a. c 9 olacak |
//= | Sol işlenenin sağ tarafından tamsayıya bölünmesini gerçekleştirir ve sonucu sol işlenene atar. | c = 11 bir = 2 c // = a şuna eşittir: c = c // a. c eşittir 5 |
bitsel operatörler
Bilgisayar bilimi dersleri almamış olanlar için. a = 60 ve b = 13 olmak üzere iki sayımız olduğunu düşünelim. İkili sistemde a = 0011 1100 ve b = 0000 1101 gibi görünecekler.
Sonunda onlarla ne yapabilirsiniz?
Şebeke | Açıklama | Örnekleri |
---|---|---|
& | İkili "AND" operatörü, yalnızca bit her iki işlenende de mevcutsa sonuca biraz kopyalar. | (a & b) bize 12'yi verecek, ki bu ikili sistemde 0000 1100 gibi görünüyor |
| | İkili "VEYA" operatörü, en az bir işlenende mevcutsa, biraz kopyalar. | (a | b) bize 61 verecek, ikili 0011 1101 |
^ | İkili "Exclusive OR" operatörü, yalnızca bit işlenenlerden birinde varsa, ancak her ikisinde birden yoksa biraz kopyalar. | (a ^ b) bize ikili kod 0011 0001'de 49 verecek |
~ | İkili ücretsiz operatör. Teklidir (yani, yalnızca bir işlenene ihtiyaç duyar), bitleri tersine çevirir, bir olan yerde sıfır olur ve bunun tersi de geçerlidir. | (~ a) -61 ile sonuçlanır, ikili sistemde 1100 0011 gibi görünür. |
<< | Bit düzeyinde sola kaydırma. Sol işlenenin değeri, sağ işlenende belirtilen bit sayısı kadar sola "kaydırılır". | a<< 2 в результате даст 240, в двоичном формате 1111 0000 |
>> | Bit düzeyinde sağa kaydırma. Sol işlenenin değeri, sağ işlenende belirtilen bit sayısı kadar sağa "kaydırılır". | a >> 2 ikili olarak 15 verir, 0000 1111 |
Mantıksal operatörler
Üyelik operatörleri
Bu operatörler, bileşik öğelerdeki (dizeler, demetler, listeler ve sözlükler) tek tek öğeleri kontrol etmek için gereklidir.
Kimlik Operatörleri
Operatör önceliği
Şebeke | Açıklama |
---|---|
** | üs alma |
~ + — | ücretsiz operatör |
* / % // | Çarpma, bölme, modulo bölme, tamsayı bölme. |
+ — | Toplama ve çıkarma. |
>> << | Bit düzeyinde sağa kaydırma ve bit düzeyinde sola kaydırma. |
& | İkili "VE". |
^ | | İkili "Özel VEYA" ve ikili "VEYA" |
<= < > >= | Karşılaştırma Operatörleri |
<> == != | Eşitlik Operatörleri |
= %= /= //= -= += *= **= | atama operatörleri |
değil | Özdeş operatörler |
içinde değil | Üyelik operatörleri |
değil veya ve | Mantıksal operatörler |
İşte böyle küçük bir operatör listesi. Python'da programlama yaparken bu sayfa sizin için bir referans olsun.
Geçenlerde I.V.'den bir kitap aldım. Petrova "Otomatik sistemlerde programlanabilir kontrolörler". Çok şey yazıyor gibiyim ama yine de bir profesyonel gibi hissetmiyorum:
Her nasılsa vazgeçmenin ve projemi bırakmanın eşiğindeydim. Bir şeyler yapmak için motivasyon arardım. Tüm eylemlerde anlam arıyordum, diye düşündüm ve sonunda bana sonucu ne verecek? Ve yine motivasyon arıyordum ...
Neden ben, şimdi tekrar klavyeye tıklıyorum ve monitöre bakıyorum. Ve yine bir makale yazdım, bu satırları yazıyorum, bazen neden ve neden bilmeden, bu beni eninde sonunda nereye götürecek?
Evet zorlanıyorum evet bir çok şeyi yapamıyorum. Ama bununla savaşmalısın.
Biliyor musun, yaptığın şeye bakılırsa, bir vızıltı alman gerekiyor, hala bir kez yaşıyoruz.
Motivasyon konusunda bir kez daha George Carlin'in bu konuda ne dediğine bakın, küfür için özür dilerim.
Saygılarımla, Gridin Semyon
Çoğu zaman gerçek hayatta, bir ifadeye katılır veya reddederiz. Örneğin, size 3 ve 5'in toplamının 7'den büyük olduğu söylenirse, "Evet, doğrudur" diyeceksiniz. Biri üç ile beşin toplamının yediden az olduğunu iddia ederse, böyle bir ifadeyi yanlış kabul edeceksiniz.
Bu tür ifadeler yalnızca iki olası yanıt önerir - ifade doğru veya doğru olarak değerlendirildiğinde "evet" veya ifade hatalı veya yanlış olarak değerlendirildiğinde "hayır". Programlama ve matematikte, bir ifadeyi değerlendirmenin sonucu yalnızca doğru veya yanlış olabilirse, böyle bir ifadeye mantıksal denir.
Örneğin, 4> 5 ifadesi mantıklıdır çünkü doğru veya yanlış olarak değerlendirilir. 4 + 5 ifadesi, yürütülmesinin sonucu bir sayı olduğu için mantıklı değildir.
Geçen derste, üç tür veriyle tanıştık - tamsayılar ve gerçek sayılar ve ayrıca dizeler. Bugün dördüncü tanıtacağız - boole veri türü(bool yazın). Boolean olarak da adlandırılır. Bu türün yalnızca iki olası değeri vardır: NS(doğru) ve YANLIŞ(Uzanmak).
>>> a = Doğru
>>> (a) yazın
Burada, a değişkenine True değeri atanır ve ardından Python yerleşik type() işlevi kullanılarak türü kontrol edilir. Yorumlayıcı bunun bir bool sınıfı değişkeni olduğunu bildirdi. Bu durumda "sınıf" ve "veri türü" kavramları aynıdır. b değişkeni ayrıca bir boole değeriyle ilişkilidir.
Programlamada, False genellikle sıfıra ve True bire eşittir. Bunu doğrulamak için bir boole değerini tamsayı türüne dönüştürebilirsiniz:
>>> int (Doğru) 1 >>> int (Yanlış) 0
Bunun tersi de mümkündür. Herhangi bir değeri bir boole türüne dönüştürebilirsiniz:
>>> bool (3.4) NS >>> bool (-150) NS >>> bool (0) YANLIŞ >>> bool ("") NS >>> bool ("") YANLIŞ
Ve burada kural çalışır: 0 olmayan ve boşluk olmayan her şey doğrudur.
Mantıksal operatörler
Doğal bir dilde (örneğin, Rusça) konuşurken, "eşit", "daha fazla", "daha az" kelimeleriyle karşılaştırmaları belirtiriz. Programlama dillerinde, matematikte kullanılanlara benzer özel karakterler kullanılır:> (devamı),< (меньше), >= (büyük veya eşit),<= (меньше или равно), == (равно), != (не равно).
Python'da tek eşittir işaretiyle gösterilen bir değişkenin atamasını ve karşılaştırmayı (iki eşittir işareti) karıştırmayın. Atama ve karşılaştırma farklı işlemlerdir.
>>> bir = 10 >>> b = 5 >>> a + b> 14 NS >>> bir< 14 - b YANLIŞ >>> bir<= b + 5 NS >>> a! = b NS >>> a == b YANLIŞ >>> c = a == b >>> a, b, c(10, 5, Yanlış)
Bu örnekte, c ifadesi = bir == b iki alt ifadeden oluşur. İlk olarak, a ve b değişkenlerinin bir karşılaştırması (==) var. Bundan sonra, mantıksal işlemin sonucu c değişkenine atanır. ifade bir , M.Ö sadece değişkenlerin değerlerini ekrana yazdırır.
Karmaşık mantıksal ifadeler
kByte> = 1023 gibi Boole ifadeleri basittir çünkü yalnızca bir Boole işlemi gerçekleştirirler. Ancak pratikte genellikle daha karmaşık ifadelere ihtiyaç duyulmaktadır. İki basit ifadenin sonucuna göre “Evet” veya “Hayır” cevabı almanız gerekebilir. Örneğin, "dışarıda kar yağıyor veya yağmur yağıyor", "haber değişkeni 12'den büyük ve 20'den küçük".
Bu gibi durumlarda, iki veya daha fazla basit mantıksal ifadeyi birleştiren özel operatörler kullanılır. İki operatör yaygın olarak kullanılmaktadır - sözde mantıksal AND ( ve) ve VEYA ( veya).
ve, bu operatörün bağladığı her iki basit ifadenin sonuçlarının doğru olması gerekir. En az bir durumda sonuç False ise, tüm karmaşık ifade yanlış olacaktır.
Operatörü kullanırken True almak için veya, karmaşık bir ifadeye dahil edilen en az bir basit ifadenin sonucunun doğru olması gerekir. Operatör durumunda veya karmaşık bir ifade, yalnızca onu oluşturan basit ifadelerin her ikisi de yanlış olduğunda yanlış olur.
x değişkenine 8 (x = 8), y değişkenine 13 (y = 13) değeri atandığını varsayalım. Boole ifadesi y< 15 and x >8 aşağıdaki gibi yürütülecektir. İlk önce y ifadesi yürütülecek< 15 . Его результатом будет True. Затем выполнится выражение x >sekiz . Sonucu False olacaktır. Ayrıca, ifade True ve False'a indirgenecek ve False döndürecektir.
>>> x = 8 >>> y = 13 >>> y< 15 and x > 8 YANLIŞ
İfadeyi şöyle yazarsak: x> 8 ve y< 15 , то оно также вернуло бы False. Однако сравнение y < 15 не выполнялось бы интерпретатором, так как его незачем выполнять. Ведь первое простое логическое выражение (x >8) zaten false döndürdü, bu ve operatörü durumunda, tüm ifadeyi false döndürür.
veya operatörü söz konusu olduğunda, ilkinin false döndürüp döndürmediği ikinci basit ifade kontrol edilir ve birincisinin zaten true olarak döndürülüp döndürülmediği kontrol edilmez. Tüm ifadenin doğru olması için tek bir Doğru yeterli olduğundan, hangi tarafta olduğu önemli değildir.
>>> y< 15 or x > 8 NS
Python'un ayrıca tekli bir mantıksal işleci vardır. Olumsuz, yani olumsuzlama. Gerçeği yalana, yalanı gerçeğe dönüştürür. Birlidir, çünkü ikili ve ve veya durumunda olduğu gibi sağına ve soluna değil, kendisinden sonraki tek bir ifadeye uygulanır.
Operatörler, işlenenlerin değerini değiştirebilen yapılardır. 4 + 5 = 9 ifadesini ele alalım. Burada 4 ve 5'e işlenen, + ise operatör olarak adlandırılır.
Operatör türleri
Python dili aşağıdaki operatör türlerini destekler:
- Aritmetik operatörler
- Karşılaştırma (ilişkisel) operatörleri
- atama operatörleri
- Mantıksal operatörler
- bitsel operatörler
- Üyelik Operatörleri
- tanımlama operatörleri
Şimdi tüm operatörlere tek tek göz atalım.
Python'da Aritmetik Operatörler
a değer 10'dur ve değişken B 21 değerini içerir, ardından:
Şebeke | Açıklama | örnek |
---|---|---|
+ Ekleme | Operatörün her iki tarafına da değerler ekleme. | a + b = 31 |
- çıkarma | Sağ işlenenin sol işlenenden çıkarılması. | a - b = -11 |
* Çarpma işlemi | Operatörün her iki tarafındaki bir değerin çarpımı | a * b = 210 |
/ Bölüm | Sol işleneni sağ işlenene böler | s / a = 2.1 |
% Modül | Sol işleneni sağ işlenene böler ve kalanı verir | %b a = 1 |
** Katılımcı | Operatörler üzerinde üstel hesaplama yapar | a ** b = 10 üzeri 20 |
// yuvarlama ile bölme | Cinsiyet Bölmesi - Sonucun ondalık noktanın kaldırıldığı bir faktör olduğu işlenenlerin bölünmesi. Ancak işlenenlerden biri negatifse sonuç yuvarlanır, yani. sıfırdan uzaklaşır (negatif sonsuza doğru): | 9 // 2 = 4 ve 9.0 // 2.0 = 4.0, -11 // 3 = -4, -11.0 // 3 = -4.0 |
Python'da Karşılaştırma Operatörleri
Operatörler her iki taraftaki değerleri karşılaştırır ve aralarındaki ilişkiye karar verir. Bunlara ilişkisel operatörler de denir.
değişken varsayalım a 10 değerini ve değişkeni içerir B 20 değerine sahipse:
Şebeke | Açıklama | örnek |
---|---|---|
== | İki işlenenin değerleri eşitse, koşul doğru olur. | (a == b) doğru değil. |
!= | İki işlenenin değerleri eşit değilse, koşul doğru olur. | (a! = b) doğrudur. |
> | Sol işlenenin değeri sağ işlenenin değerinden büyükse, koşul doğru olur. | (a>b) doğru değildir. |
< | Sol işlenenin değeri sağ işlenenin değerinden küçükse, koşul doğru olur. | (a< б) истинно. |
> = | Sol işlenenin değeri, sağ işlenenin değerinden büyük veya ona eşitse, koşul doğru olur. | (a> = b) doğru değil. |
<= | Sol işlenenin değeri, sağ işlenenin değerinden küçük veya ona eşitse, koşul doğru olur. | (a<= б) истинно. |
Python'da Atama Operatörleri
Değişkenin içerdiğini varsayalım a değer 10'dur ve değişken B 20 değerine sahipse:
Şebeke | Açıklama | örnek |
---|---|---|
= | İşlenenlerin sağ tarafı ile işlenenin sol tarafına değerler atar | c = a + b, a + b'nin değerini c'ye atar |
+ = Ekle ve | Sağ işleneni sol işlenene ekler ve sonucu sol işlenene atar | c + = a, c = c + a'ya eşdeğerdir |
- = çıkarma ve | Sağ işleneni sol işlenenden çıkarır ve sonucu sol işlenene atar | c - = a, c = c - a'ya eşdeğerdir |
* = çarpma ve | Sağ işleneni sol işlenenle çarpar ve sonucu sol işlenene atar | c * = a, c = c * a'ya eşdeğerdir |
/ = bölünmüş ve | Sol işleneni sağ işlenene böler ve sonucu sol işlenene atar | c / = a, c = c / ac / = a ile eşdeğerdir, c = c / a ile eşdeğerdir |
% = Modül ve | İki işlenenli bir modülü kabul eder ve sonucu sol işlenene atar | c% = a, c = c% a'ya eşittir |
** = Katılımcı ve | Operatörlerin üssünü hesaplar ve sol işlenenin değerini atar | c ** = a, c = c ** a'ya eşdeğerdir |
// = Kat Bölümü | Operatörlerde yuvarlama ile bölme yapar ve sol işlenenin değerini atar | c // = a, c = c // a'ya eşdeğerdir |
Python'da bitsel operatörler
Bitsel operatörler, bitler üzerinde çalışır ve işlemleri parça parça gerçekleştirir. Diyelim ki a = 60 ise; ve b = 13; Şu anda ikili dosyada şöyle görünecekler:
—————–
a & b = 0000 1100
a | b = 0011 1101
bir ^ b = 0011 0001
Python'un yerleşik bin () işlevi, bir tamsayının ikili gösterimini elde etmek için kullanılabilir.
Aşağıdaki Bitsel Operatörler Python dili tarafından desteklenir:
Şebeke | Açıklama | Örnek |
---|---|---|
& ikili VE | sonuç olarak, her iki işlenende de varsa, bit operatörünün kopyaları | (a & b) (0000, 1100 anlamına gelir) |
| ikili VEYA | işlenenlerden herhangi birinde varsa biraz kopyalar. | (a | b) = 61 (0011 1101 anlamına gelir) |
^ ikili Özel veya | bir işlenende ayarlanmışsa biraz kopyalar, ancak ikisinde birden değil. | (a ^ b) = 49 (0011 0001 anlamına gelir) |
~ İkili tamamlayıcı | Teklidir ve bir saygısız bit etkisine sahiptir. | (~ a) = -61 (form olarak, imzalı ikili sayı nedeniyle çift tümleyen 1100 0011 anlamına gelir. |
<< Двоичный сдвиг влево | Sol işlenenin değeri, sağ işlenen tarafından belirtilen bit sayısı kadar sola taşınır. | a<< = 240 (1111 означает 0000) |
>> İkili Sağa Kaydırma | Sol işlenenin değeri, sağ işlenen tarafından belirtilen bit sayısı kadar sağa taşınır. | a >> = 15 (0000, 1111 anlamına gelir) |
Python'da Boole operatörleri
Aşağıdaki mantıksal işleçler Python dili tarafından desteklenir. Değişkenin adil olduğunu ve değişkenin B Yanlış ise:
Python'da Üye Operatörler
Dizeler, listeler veya demetler gibi bir dizideki üyeliği test eden operatörlerin durumu. Aşağıda açıklandığı gibi iki üyelik operatörü vardır:
Python Kimlik Operatörleri
Kimlik operatörleri, iki nesnenin bellek konumlarını karşılaştırır. Aşağıda açıklandığı gibi iki tanımlama ifadesi vardır:
Python öncelik operatörleri
Aşağıdaki tablo, en yüksek öncelikliden en düşük önceliğe kadar tüm operatörleri listeler.
Seri numarası | Operatör ve Açıklama | |
---|---|---|
1 | **
Üs (güç artışı) |
|
2 | ~ + –
Tamamlayıcı, tekli artı ve eksi (son ikisi için yöntem adları + @ ve - @ şeklindedir) |
|
3 | * / % //
Çarpma, modulo bölme ve modulo kalanı |
|
4 | + –
Toplama ve çıkarma |
|
5 | >> <<
Sağ ve sol bitsel kaydırma |
|
6 | &
Bit düzeyinde "VE" | |
7 | ^ |
Bit düzeyinde özel "VEYA ve normal VEYA" |
|
8 | <= <>> =
karşılaştırma operatörleri |
|
9 | <> ==! =
eşitlik operatörleri |
|
10 | = %= /= //= -= += *= **=
atama operatörleri |
|
11 | değil tanımlama operatörleri |
|
12 | içinde değil üyelik operatörleri |
|
13 | değil veya ve Mantıksal operatörler |
Boolean veri türü (veya Boolean), iki olası değerden birini kabul eden ilkel bir türdür: Doğru veya Yanlış. Bu tür, birçok programlama dilinde algoritma oluşturmak ve programların davranışını kontrol etmek için kullanılır.
Not: Bu veri türünün adı (Boolean), adını matematiksel mantık eğitimi almış matematikçi George Boolean'dan aldığı için her zaman büyük harfle yazılır. True ve False da büyük harfle yazılır - bunlar Python'da özel değerlerdir.
Bu eğitim size Python'daki Boole mantığının temellerini tanıtacaktır: karşılaştırma operatörleri, mantıksal operatörler, doğruluk tabloları ve daha fazlası.
Karşılaştırma Operatörleri
Programlamada, karşılaştırma operatörleri, değerleri değerlendirirken ve karşılaştırırken, daha sonra bunları tek bir boole değerine (Doğru veya Yanlış) indirgemek için kullanılır.
Python 3 karşılaştırma operatörleri bu tabloda sunulmaktadır:
Şebeke | Anlam |
== | Bileşenler arasındaki eşitliği kontrol eder; bileşenler eşitse koşul doğrudur. |
!= | Bileşenler arasındaki eşitliği kontrol eder; eğer bileşenler eşit DEĞİLSE koşul doğrudur. |
< | Sol bileşenin değerini değerlendirir; doğru olandan daha az ise koşul doğrudur. |
> | Sol bileşenin değerini değerlendirir; koşul, doğru olandan büyükse doğrudur. |
<= | Sol bileşenin değerini değerlendirir; koşul, doğru bileşenden küçük veya ona eşitse doğrudur. |
>= | Sol bileşenin değerini değerlendirir; koşul, doğru bileşenden büyük veya ona eşitse doğrudur. |
Nasıl çalıştıklarını görmek için bu operatörlerle çalışmayı deneyin. İlk önce, birkaç değişken oluşturun:
Şimdi yukarıdaki operatörleri kullanarak değişkenlerin değerlerini karşılaştırın.
x = 5
y = 8
yazdır ("x == y:", x == y)
yazdır ("x! = y:", x! = y)
yazdır ("x< y:", x < y)
yazdır ("x> y:", x> y)
yazdır ("x<= y:", x <= y)
yazdır ("x> = y:", x> = y)
x == y: Yanlış
x! = y: Doğru
x< y: True
x> y: Yanlış
x<= y: True
x> = y: Yanlış
Matematiksel mantığı takip eden Python, değişkenlerin değerleri arasındaki ilişkileri şu şekilde değerlendirir:
- 5, 8'e eşit mi? Yalan
- 5, 8'e eşit değil mi? NS
- 5, 8'den küçük mü? NS
- 5, 8'den büyük mü? Yalan
- 5, 8'den küçük mü yoksa eşit mi? NS
- 5, 8'den büyük mü yoksa 8'e eşit mi? Yalan
Karşılaştırma operatörleri, kayan nokta sayılarına ve dizilerine de uygulanabilir.
Not: Dizeler büyük/küçük harf duyarlıdır; bu davranışı devre dışı bırakmak için özel bir yöntem kullanmanız gerekir.
İki satırı karşılaştırmayı deneyin:
Merhaba = "Merhaba"
merhaba = "merhaba"
Merhaba == merhaba: Yanlış
Merhaba ve merhaba dizeleri aynı karakter kümesini içerir, ancak bunlardan biri büyük harfli karakterler içerdiğinden eşit değildirler. Büyük harfli karakterler de içeren başka bir değişken eklemeyi deneyin ve ardından bunları karşılaştırın.
Merhaba = "Merhaba"
merhaba = "merhaba"
Hello_there = "Merhaba"
print ("Merhaba == merhaba:", Merhaba == merhaba)
print ("Merhaba == Merhaba_burada", Merhaba == Merhaba_burada)
Merhaba == merhaba: Yanlış
Merhaba == Merhaba_burada: Doğru
Ayrıca > ve<. Python выполнит лексикографическое сравнение строк на основе значений символов ASCII.
Karşılaştırma operatörleri True ve False Boole değerlerine uygulanabilir:
t = Doğru
f = Yanlış
yazdır ("t! = f:", t! = f)
t! = f: Doğru
= ve == operatörleri arasındaki farka dikkat edin.
x = y # Atama operatörü. x ve y arasındaki eşitliği ayarlar (yani, x'i y'ye ayarlar).
x == y # Karşılaştırma operatörü. x ve y arasındaki eşitliği test eder ve ifadeyi doğru veya yanlış olarak değerlendirir. x ve y eşitse ifade doğrudur.
Mantıksal operatörler
Sonuçları True veya False Boole değerine indirgeyen değerleri karşılaştırmak için üç Boole operatörü kullanılır.
Boolean operatörleri genellikle iki veya daha fazla ifadeyi değerlendirmek için kullanılır. Örneğin, aşağıdakileri kontrol eden bir programda kullanılabilirler:
- Öğrenci sınavı geçti mi?
- ve kayıtlı olup olmadığı.
Her iki değerin de doğru olması durumunda öğrenci bir sonraki derse aktarılacaktır.
Başka bir örnek: mantıksal operatörlere sahip bir program, kullanıcının çevrimiçi bir mağazadaki etkinliğini kontrol edebilir:
- mağaza kredisi kullandı mı
- veya Son 6 ayda ürün sipariş edip etmediğini.
Örneğin, üç ifadeyi karşılaştırmayı deneyin:
yazdır ((9> 7) ve (2< 4)) # Her iki ifade de doğrudur
yazdır ((8 == 8) veya (6! = 6) # İfadelerden biri True
yazdır (değil (3<= 1)) # İfade yanlış
NS
NS
NS
İlk durumda, her iki ifade de doğrudur, bu nedenle and operatörü True değerini döndürür.
İkinci durumda, yalnızca 8 == 8 değeri doğrudur.Önerilen koşullardan en az biri doğru olduğundan, or operatörü True döndürür. and operatörü daha sonra False döndürür.
Üçüncü durumda, ifade 3<= 1 ложно. Оператор not изменяет полученное логическое значение на противоположное: not False = True.
Şimdi kayan nokta sayılarını karşılaştırmayı deneyin.
yazdır ((- 0.2> 1.4) ve (0.8)< 3.1)) # İfadelerden biri Yanlış
yazdır ((7.5 == 8.9) veya (9.2! = 9.2)) # Her iki ifade de yanlış
yazdır (değil (-5.7<= 0.3)) # İfade doğrudur
- İlk örnekte ifadelerden biri yanlış olduğundan ve False döndüreceğinden. and operatörü, bir ifadeyi yalnızca her iki bileşen de doğru olduğunda doğru olarak değerlendirir.
- Her iki ifade de yanlış olduğundan, veya operatörü False değerini döndürür.
- İfade doğru olduğundan, değil operatörü False (True = False değil) döndürür.
Not: Nasıl çalıştığını anlamıyorsanız, doğruluk tablolarını anlamanıza yardımcı olabilirler. Bu konuyu bu kılavuzda daha sonra ele alacağız.
Mantıksal operatörler, bileşik ifadelerde birleştirilebilir:
değil ((- 0.2> 1.4) ve ((0.8)< 3.1) or (0.1 == 0.1)))
İfade (0.8< 3.1) or (0.1 == 0.1) истинно, поскольку оба математических выражения, из которых оно состоит, истинны. Оператор or вернёт True.
Elde edilen True değeri şu ifadenin bir bileşeni olur: (-0.2> 1.4) ve (True). -0.2> 1.4 ifadesi yanlış olduğundan ve operatörü False değerini döndürür. (Yanlış) ve (Doğru) = Yanlış.
doğruluk tabloları
Matematiksel mantık, programlamada çok faydalı bir bilgi alanıdır. Bu kılavuzda, bunun ana yönlerine bir göz atacağız.
Aşağıda karşılaştırma operatörü == ve tüm mantıksal operatörler için doğruluk tabloları bulunmaktadır. Mantıksal ifadeler yazarken kullanılabilirler. Tablolar, operatörün ortak kullanımlarını listeler, bu nedenle bunları ezberlemeniz önerilir.
Operatör için doğruluk tablosu ==
AND operatörü için doğruluk tablosu
Operatör Doğruluk Tablosu VEYA
NOT operatörü için doğruluk tablosu
Doğruluk tabloları, mantıkta kullanılan genel matematiksel tablolardır. Algoritma oluştururken ve program yazarken kullanılabilmesi için bunları ezbere öğrenmek faydalıdır.
Akışı Kontrol Etmek İçin Boole Operatörlerini Kullanma
Bir programın sonucunu ve veri akışlarını kontrol etmek için koşullu ifadeleri (koşul) ifadelerle (yan tümce) kullanabilirsiniz.
Koşullu ifadeler bir değeri doğru veya yanlış olarak değerlendirir.
İfade, koşullu bir ifadeyi izleyen ve programın sonucunu belirleyen bir kod bloğudur.
Aşağıda, bir Python programının akışını kontrol etmek için koşullu ifadelerin nasıl birleştirileceğini gösteren bir kod bloğu bulunmaktadır.
eğer derece> = 65: # koşul
print ("Geçme notu") # ifade
Başka:
yazdır ("Başarısız not")
Bu program her öğrencinin performansını değerlendirir ve sınavı geçip geçmediğini belirler. Örneğin, bir öğrenci 83 yazarsa, ilk koşul Doğru olur ve program şu satırı görüntüler:
Öğrenci 59 puan almışsa, program yayınlanacağı için ilk koşul yanlış olacaktır.
Taramalı Atomik Kuvvet Mikroskobu Laboratuvar raporu şunları içermelidir:
İletişim ağının destek raflarının seçimi
AC katener tasarımı ve hesaplanması
Mikroişlemci sistemlerinin geliştirilmesi Mikroişlemci sistemlerinin tasarım aşamaları
mcs51 ailesinin mikrodenetleyicileri