Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
YayınlayanMiina Mattila Değiştirilmiş 5 yıl önce
1
Bilgisayar Programlamasına ve Veri Analizine Giriş - VI
Hüsnü Yenigün Sabancı Üniversitesi Lise Yaz Okulu 2016
2
Sabancı Üniversitesi Lise Yaz Okulu
Modül 6 için Planımız Liste tipi değişkenler Sözlük (Dictionary) tipi değişkenler Sabancı Üniversitesi Lise Yaz Okulu
3
Liste Tipi Değişkenler
Birden fazla değeri tek bir değişkende tutabiliriz. Bu değişken tipine “list” adı verilir. Değerler arasında “,” karakteri vardır, bir de [] kullanırız Örnek: liste1 = [0,2,3,4,5] liste2 = ['a', 'b', 'c', 'd'] liste3 = ["fizik", "kimya", "biyoloji", "tarih", "cografya", "turkce"] Listelerin elemanlarına sıra numaralarını kullanarak erişebiliriz print liste1[1], liste2[0], liste3[2] 2 a biyoloji Sabancı Üniversitesi Lise Yaz Okulu
4
Liste Tipi Değişkenler
Listelerde erişime kolaylık sağlayan bir şey de Python’un listelerde geriden saymaya başlayabilmesidir. Örnek: liste3 = ["fizik", "kimya", "biyoloji", "tarih", "cografya", "turkce"] print liste3[0] print liste3[-1] print liste3[-2] print liste3[-3] >>> fizik turkce cografya tarih Sabancı Üniversitesi Lise Yaz Okulu
5
Listeye Eleman Eklemek
Listelerin içine elementler append() fonskiyonu ile atılır. Elementler del fonksiyonu ile listeden silinebilir. Örnek liste3 = ["fizik", "kimya", "biyoloji", "tarih", "cografya", "turkce"] print liste3[-1] liste3.append(“matematik") del liste3[-1] >>> turkce matematik Sabancı Üniversitesi Lise Yaz Okulu
6
Liste Elemanlarına Döngü ile Erişebiliriz
Örnek: liste3 = ["fizik", "kimya", "biyoloji", "tarih", "cografya", "turkce"] for ders in liste3: print ders >>> fizik kimya biyoloji tarih Cografya turkce Sabancı Üniversitesi Lise Yaz Okulu
7
Listeler Üzerinde İşlemler
Örnek: liste3 = ["fizik", "kimya", "biyoloji", "tarih", "cografya", "turkce"] print liste3[::-1] print liste3[2:4] >>> ['turkce', 'cografya', 'tarih', 'biyoloji', 'kimya', 'fizik'] ['biyoloji', 'tarih'] Sabancı Üniversitesi Lise Yaz Okulu
8
Listeler Üzerinde İşlemler
Örnek: liste3 = ["fizik", "kimya", "biyoloji", "tarih", "cografya", "turkce"] print liste3[0][0] print liste3[-1][-1] >>> f e Sabancı Üniversitesi Lise Yaz Okulu
9
Sabancı Üniversitesi Lise Yaz Okulu
split() Fonksiyonu Bu fonksiyon bir cümleyi bırakılan boşluklara göre parçalara ayırıp bir liste oluşturur. Örnek cumle = "Akilli adam aklini kullanir daha akilli adam baskalarinin da aklini kullanir " listem = cumle.split() print listem >>> ['Akilli', 'adam', 'aklini', 'kullanir', 'daha', 'akilli', 'adam', 'baskalarinin', 'da', 'aklini', 'kullanir'] Sabancı Üniversitesi Lise Yaz Okulu
10
Sabancı Üniversitesi Lise Yaz Okulu
join() Fonksiyonu split() fonksiyonunun tam tersini yapar, bir listenin içindeki elementleri verilen parametre ile birleştirip cümle kurar. Örnek cumle = "Akilli adam aklini kullanir daha akilli adam baskalarinin da aklini kullanir “ listem = cumle.split() print " ".join(listem) print ",".join(listem) print "".join(listem) Akilli adam aklini kullanir daha akilli adam baskalarinin da aklini kullanir Akilli,adam,aklini,kullanir,daha,akilli,a dam,baskalarinin,da,aklini,kullanir Akilliadamaklinikullanirdahaakilliadambaskalarinindaaklinikullanir Sabancı Üniversitesi Lise Yaz Okulu
11
Sözlük (Dictionary) Veri Tipi
Listelere çok benzerler ama her değere belli bir ‘key’, yani anahtar atanır. Bu sözlüklerin içinde değer aramayı çok kolaylaştırır Örnek: gunler = {'Pazartesi': 0, 'Sali':1, 'Carsamba':2, 'Persembe':3, 'Cuma':4, 'Cumartesi': 5, 'Pazar':6} print gunler['Pazartesi'] print gunler['Cumartesi'] maks = max(gunler, key=gunler.get) print maks gunler[maks] >>> 5 Pazar 6 Sabancı Üniversitesi Lise Yaz Okulu
12
Sözlük (Dictionary) Veri Tipi
gunler = {'Pazartesi': 'Monday', 'Sali':'Tuesday', 'Carsamba':'Wednesday', 'Persembe':'Thusday', 'Cuma':'Friday', 'Cumartesi': 'Saturday', 'Pazar':‘Sunday'} print gunler['Pazartesi'] print gunler['Cumartesi'] >>> Monday Saturday Sabancı Üniversitesi Lise Yaz Okulu
13
Sabancı Üniversitesi Lise Yaz Okulu
Sezar’ın şifresi Arkadaşımız ile şifreli bir şekilde konuşmak istediğimizi varsayalım: Açık mesaj: husnu hoca cok sert Şifreli mesaj: kxvqx krfd frn vhuw Sezar (Gaius Julius Caesar) gizli mesajlarini bu şekilde şifreleyerek gönderirdi asıl harf a b c d e f g h i j k l m n o p q r s t u v w x y z k=3 (anahtar) a b c d e f g h i j k l m n o p q r s t u v w x y z şifreli harf Sabancı Üniversitesi Lise Yaz Okulu
14
Sabancı Üniversitesi Lise Yaz Okulu
Sezar’ın şifresi Anahtar (k) olarak 1 ile 25 arasında herhangi bir değer kullanılabilir. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 a b c d e f g h i j k l m n o p q r s t u v w x y z k=3 a b c d e f g h i j k l m n o p q r s t u v w x y z 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 a b c d e f g h i j k l m n o p q r s t u v w x y z k=9 a b c d e f g h i j k l m n o p q r s t u v w x y z 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 Sabancı Üniversitesi Lise Yaz Okulu
15
Sabancı Üniversitesi Lise Yaz Okulu
Sezar’ın şifresi Kullanıcıdan 1 ile 25 arasında bir tam sayı girmesini isteyiniz. Bu sizin anahtarınız olacak. Bunu k değişkeninde tutalım Daha sonra bir mesaj girmesini isteyiniz. Her harfi sayısal bir değeri olsun (ör: A0, B1, …) Anahtarı kullanarak, mesajın harflerini tek tek şifreleyeniz. Şifrelemek için her harfi, k sonraki harf ile değiştirelim. k sonraki harfin sayısal değeri 25’dan büyük ise, 26 ile modül alın Boşlukları ve noktalama işaretlerini şifrelemeyin Kolaylık olsun diye küçük harfle çalışabilirsiniz. Sabancı Üniversitesi Lise Yaz Okulu
16
Sabancı Üniversitesi Lise Yaz Okulu
Örnek >>> Anahtari girin: 0 Mesajinizi girin: sabanci Sifreli Mesaj: sabanci Anahtari girin: 1 Sifreli Mesaj: tbcbodj >>> Anahtari girin: 2 Mesajinizi girin: sabanci univ Sifreli Mesaj: ucdcpek wpkx Anahtari girin: 4 Mesajinizi girin: saldirin! Sifreli Mesaj: wephmvmr! Sabancı Üniversitesi Lise Yaz Okulu
17
Sabancı Üniversitesi Lise Yaz Okulu
İpucu Dictionary tipi değişken kullanabilirsiniz alfabe ={'a':0, 'b':1, 'c':2, 'd':3, 'e':4, 'f':5, 'g':6, 'h':7, 'i':8, 'j':9, 'k':10, 'l':11, 'm':12, 'n':13, 'o':14, 'p':15, 'q':16, 'r':17, 's':18, 't':19, 'u':20, 'v':21, 'w':22, 'x':23, 'y':24, 'z':25} ters_alfabe = {0:'a', 1:'b', 2:'c', 3:'d', 4:'e', 5:'f', 6:'g', 7:'h', 8:'i', 9:'j', 10:'k', 11:'l', 12:'m', 13:'n', 14:'o', 15:'p', 16:'q', 17:'r', 18:'s', 19:'t', 20:'u', 21:'v', 22:'w', 23:'x', 24:'y', 25:'z'} Sabancı Üniversitesi Lise Yaz Okulu
18
Sabancı Üniversitesi Lise Yaz Okulu
Sezar Şifresi Kodu alfabe ={'a':0, 'b':1, 'c':2, 'd':3, 'e':4, 'f':5, 'g':6, 'h':7, 'i':8, 'j':9, 'k':10, 'l':11, 'm':12, 'n':13, 'o':14, 'p':15, 'q':16, 'r':17, 's':18, 't':19, 'u':20, 'v':21, 'w':22, 'x':23, 'y':24, 'z':25} ters_alfabe = {0:'a', 1:'b', 2:'c', 3:'d', 4:'e', 5:'f', 6:'g', 7:'h', 8:'i', 9:'j', 10:'k', 11:'l', 12:'m', 13:'n', 14:'o', 15:'p', 16:'q', 17:'r', 18:'s', 19:'t', 20:'u', 21:'v', 22:'w', 23:'x', 24:'y', 25:'z'} k = int(raw_input("Anahtari girin: ")) mesaj = raw_input("Mesajinizi girin: ") Sabancı Üniversitesi Lise Yaz Okulu
19
Sabancı Üniversitesi Lise Yaz Okulu
Sezar Şifresi Kodu sifreli_mesaj = '' for karakter in mesaj: if karakter not in alfabe: sifreli_mesaj += karakter else: pozisyon = alfabe[karakter] pozisyon = (pozisyon+k)%26 sifreli_mesaj += ters_alfabe[pozisyon] print "Sifreli Mesaj: ", sifreli_mesaj Sabancı Üniversitesi Lise Yaz Okulu
20
Sezar Şifresi Çözme Yarışması
KURALLAR Size Sezar şifresi kullanılarak elde edilmiş şifreli bir mesaj vereceğiz. Asıl mesajı (şifresiz mesajı) ilk bulan yarışmayı kazanır. Asıl mesajı bulunca: Yanıma gelin (olduğunuz yerden söylemek yok) Sahnede asıl mesajın ne olduğunu yüksek sesle söyleyin Şifreli mesaj: nwkdhdtonwnakjqln Sabancı Üniversitesi Lise Yaz Okulu
21
Sezar Şifresi Çözme Yarışması
import sezar sifreli_mesaj = "nwkdhdtonwnakjqln" for k in range(1,26): desifre_mesaj = sezar.sifrele(sifreli_mesaj,k) print desifre_mesaj Sabancı Üniversitesi Lise Yaz Okulu
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.