Liste işlemleri append()-remove()-pop()

Merhaba,

Aşağıdaki code bloğu ne yapıyor?

list1 ‘de olan string tuşlandıysa onu list1 ‘de remove ediyor.

list1 ‘de olmayan string tuşlandıysa onu list1 ‘e append ediyor.

Herhangi bir string tuşlamadan enter’a tıklandıysa, list1’in sonuncu index’e sahip elementini kesiyor( pop() )

Listeyi kese kese bitirmek için while loop eklenebilir.

###Variables###
list1 = ['hen', 'cat', 'goat', 'cat', 'bird', 'cat', 'horse', 'goat', 'cat', 'horse', 'cow', 'ox', 'hen','deer']
print("Look at all animals",list1)

###list o matic fuction###
def listematic(str1,list1=[]):
    if not str1:
        kesilen = list1.pop()
        #print(kesilen,"popped from the list")
        return kesilen+' '+'popped from the list'
    if str1 in list1:
        list1.remove(str1)
        #print("1 instance of",str1 ,"removed from list")
        return '1 instance of'+' '+str1+' '+'removed from list'
    else:
        list1.append(str1)
        #print("1 instance of", str1, "appened to list")
        return '1 instance of'+' '+str1+' '+"appened to list"

###Program Flow###
#while True: --> son satır ve bunu bonus olarak kullanabilirsiniz,listeyi birer birer keser. Bu ve son satır arasındaki
#code'un indentation level'ini düzeltiniz.
if list1:
    str1 = input("Hayvan ismi giriniz :")
    if str1 == "Quit":
        print("Goodbye")
    else:
        print(listematic(str1,list1))
        print(list1)
else:
    print("Goodbye")
#   break

Herkese sorunsuz ve neşeli günler dilerim.

Kelimelere ayıralım ve sonuncu space ‘i düşünelim :)

 

Merhaba ,

Aşağıdaki code ile verilen string içinde, belli bir harften büyük bir harf ile başlayan kelimeleri bulabilirsiniz. Sonuncu space ‘ten sonraki kelime için .rfind( ) metodu kullanılabilir. Onu kullanmadan bulmaya çalıştım.

input_phrase = "Wheresoever you go, go with all your heart"
word = ""
start = 0
space_index = input_phrase.find(" ")
for i in input_phrase:
        if i.isalpha():
            word = word + i
            if space_index != -1:
                start = space_index + 1
                space_index = input_phrase.find(" ", space_index + 1)
        elif word.lower() >= "h":
            print(word.upper())
            word = ""
        else:
            word = ""
print(input_phrase[start:].upper())

Text içinde string aramak .find( )

Merhaba,

Text içinde geçen bir string‘in index numarası bulmak.

work_tip = "A snippet is a small chunk of PHP code that you can use to extend the " \
           "functionality of a WordPress-powered website; essentially a mini-plugin with " \
           "less load on your site. Most snippet-hosting sites tell you to add snippet code " \
           "to your active theme's functions.php file, which can get rather long and messy after a while."
code_index =work_tip.find("code")
while code_index > 0:
    print("'snippet' is at index",code_index)
    code_index = work_tip.find("snippet",code_index+1)
    if code_index == -1:
        print("no more 'snippet'")

work_tip text’i içinde geçen ‘snippet’ string’inin index numaralarını gösterir. Çıktısı aşağıdaki gibidir.

‘snippet’ is at index 34
‘snippet’ is at index 176
‘snippet’ is at index 214
no more ‘snippet’

Azure IoT – Raspberry PI’ i IoT Hub’a bağlayalım

Azure IoT  Raspberry PI’i IoT Hub’a bağlayalım

Merhaba,

Nesne simülasyonu ile bazı uygulamaları incelemiştik. Bir adet PI edindim  Onun IoT hub’a bağlanması adımlarını inceleyelim. 

Şunları yapacağız.

IoT hub’da raspberry cihazımız için device object oluşturacağız. Device object’in connection string’ini raspberry cihaz’dan veri gönderirken kullanacağız.

An itibarıyla kullandığım ürünün sürüm bilgisi üstteki gibidir. Raspbian işletim sistemli raspberry cihazımız ile çalışacağız. Şu an sensörüm olmadığı için sıcaklık ve nem verilerini simule edeceğiz.

IoT Hub hostname : iottestlab001.azure-devices.net

 

Not: Üstteki string içinde görünen shared access key temsilidir. Kendi yapınıza string’ler ile çalışınız.

İşlemlerimiz için gereken yetkilere sahip policy’yi , iothubowner policy’sinin connection string’ini kullanıyorum.

İhtiyaca göre diğer policy’leri de kullanabilirsiniz. Custom policy de oluşturabilirsiniz.

Raspberry cihazımız için IoT Hub>Device Explorer panelinden register device işlemini tamamlayalım.

 

İşlemi tamamlayalım. Device object aşağıda görüldüğü gibi oluşmuş olacaktır.

 

 

Cihazı seçerek connection string’ini kopyalayalım.

HostName=iottestlab001.azure-devices.net;DeviceId=birinciCihaz;SharedAccessKey=NzgXVy4bdRmlB1EZGC+ZpNEjJqN7aApkfVVLF02YBEs=

Not: Shared Access Key temsilidir.

Fiziksel raspberry cihazını, IoT hub’a bağlarken kullanacağımız device object’i hazırlamış olduk.

 

Raspberry cihazıma ssh ile bağlanarak hazırlayalım.

 

node.js versiyonu eski olduğu için , güncelleyeceğim.

Ardında yükleme işlemi…

 

İşlem tamamlandıktan sonra GIT’ten bir örnek uygulama temin ediyoruz.

 

Clone’ladığımız folder’a geçerek npm’i yüklüyoruz.