Belajar Python - Array


Array adalah kumpulan nilai variabel (biasanya tipe sejenis) yang disatukan dalam satu variabel. Jadi variabel itu punya banyak nilai dikarenakan bentuk dari array ini sendiri. Selain itu, Array ini memiliki indeks untuk masing-masing nilai. Seperti contoh gambar diatas, pada indeks ke-0 diisi oleh 'p', kemudian indeks ke-1 diisi oleh 'y' , indeks ke-2 diisi oleh 't' dan seterusnya. Beberapa contoh array adalah sebagai berikut.

  • Array of Char
Array of Char adalah kumpulan dari char, yaitu biasa kita kenal sebagai String. contoh:
kata = "python"
# slice per-huruf
print kata[0],
print kata[1],
print kata[2],
print kata[3],
print kata[4],
print kata[5],

  • Array of Integer
Array of Integer adalah kumpulan dari nilai integer/angka yang disatukan dalam satu variabel. contoh:
angka = [1,2,3,4,5,6,7,8]
# dicetak dengan For
for i in angka:
    print i

Kemudian di Python ada Tipe Data lain yang bentuknya menyerupai array seperti List, Tuple, dan Dictionary yang akan saya bahas di postingan selanjutnya.


----------------------- || || -----------------------

Belajar Python - Perulangan/Loops While



Masih saudara-an dengan Perulangan For, tapi dia merupakan perulangan yang lebih fleksibel dan serba bisa, inilah Perulangan While.
Perulangan While akan terus mengeksekusi apabila kondisinya tetap dipenuhi, kondisi disini tidak hanya batas saja, tetapi juga kondisi perbandingan yang biasa kita pakai di kondisi Percabangan If. WOW!!
Contoh kasusnya seperti ada sebuah lampu pijar yang tersambung dengan sumber arus baterai. Selama kondisi terpenuhi, yakni selama baterai masih menghasilkan arus listrik, maka lampu akan tetap menyala. Jika tidak ada listrik, maka sebaliknya.

sintaksnya:
while ( kondisi ) :

    # perintah yang akan dieksekusi
    # dibagian ini biasanya juga ditambahkan counter, variabel dan lain-lain.

Contoh: 
angka = 10
while(angka >= 10):
    angka = input('Masukan angka dibawah 10: ')

print "anda baru saja memasukan angka dibawah 10"

penjelasan diatas ialah kita menginisialisasi variabel angka di awal yaitu 10 ( lebih dari sama dengan 10), selama angka diisi oleh nilai  lebih dari sama dengan 10, maka akan terus mengeksekusi perintah input untuk memasukan angka dibawah 10. Jika dimasukan angka dibawah 10, maka program akan lanjut/berakhir.

Contoh lain:
huruf = 'r'
while (huruf != 'R'):
   huruf = raw_input("Masukan R besar: ")
  
print("Program berakhir")

program akan terus berjalan selama kita tidak memasukan huruf 'R'.
Meniru For? Bisa, karena while ini fleksibel dengan kondisinya....

Sintaks:

counter = 0       # inisialisasi
while(counter < 10):        # batas/kondisi

    print "counter bernilai : %d",counter
    counter = counter + 1              # iterasi

print "Program Berakhir"

 Fleksibel kan?

------------------------ \\ // ------------------------




Belajar Python - Perulangan/Loops For



Ini dia loops kesayangan kita dalam programming, jangan pernah lakukan hardcoding kalau bisa diselesaikan dengan perulangan For.
For bertugas melakukan perintah/eksekusi secara berulang-ulang dengan kondisi awal dan batas yang terserah kita sebagai programmer :)

Mungkin pernah lihat ataupun dengar ada seorang siswa sekolah dasar yang sedang dihukum oleh wali kelasnya, dia disuruh menulis  kalimat "Saya berjanji tidak akan mengulanginya lagi" di papan tulis sampai penuh. Jika saja papan tulis itu layar komputer dan si anak adalah seorang programmer, perulangan For adalah langkah yang tepat bagi si anak.

Sintaks:
for i in range(1,11):
   print "Saya berjanji tidak akan mengulanginya lagi"
selesailah sudah kasus itu, secara ajaib program mencetak kalimat itu sebanyak sesuai kondisi. Itulah For loops, kita bisa berkreasi dengan cara ini.

ada beberapa bentuk penggunaan For loops, seperti sintaks di atas, variabel i berperan sebagai counter, yang artinya variabel i berjalan dari indeks 0 sampai indeks akhir dalam sebuah array, sekaligus variabel i memiliki nilai yang dimiliki indeks yang sedang digunakan.

contoh:
for i in range(1,16):
    print "i sekarang bernilai = ",i
dari contoh diatas kita bisa mengetahui nilai i yang sedang digunakan dengan cara mencetak nilai variabel i tersebut.

contoh lain kita memiliki list array of string yang berisi ['Python','Ruby','PHP','C++','Pascal','Java','Delphi'], jika kita ingin mencetak nilai-nilai dalam array tersebut gunakan For loops juga.

sintaks:
for i in ['Python','Ruby','PHP','C++','Pascal','Java','Delphi']:
    print i
mencetak array of string saja bisa apalagi mencetak char dalam string.

sintaks: 
for i in "abcdefghijklmnopqrstuvwxyz":
    print i,
print ""

For your Information:
Saat kita melakukan print "Isi Apa saja" otomatis kita mencetak di baris baru kebawah, tapi jika kita tambahkan koma dibelakang sesuatu yang akan di print seperti ' print i, ' maka kita akan melanjutkan print ke kanan tanpa melakukan pergantian baris.


Siap dengan Nested For? ternyata bukan hanya sintaks If saja yang bisa nested, For juga bisa.
contoh kita akan membuat sebuah persegi panjang 10x5 dari '*'.

sintaks:
for i in range(0,5):
    for j in range (0, 10):
        print '*',
    print ""

Mudah kan ??

------------------------- \\ // --------------------------


Belajar Python - Range

Range secara arti bahasa (kalau tidak salah inggris...) adalah jarak/jangkauan. Bicara mengenai jarak itu pasti ada yang namanya titik awal dan titik akhir, atau jarak antara benda 1 dan benda 2. Range merupakan sebuah fungsi yang menghasilkan array of integer/ List of Integer secara terurut/sequential.
Kegunaannya dari  Range ini ialah (di antaranya....) :
  • kita bisa membuat sebuah pola deret terartur tanpa membuat sebuah variabel dan memasukan nilai secara manual 
  • digunakan dalam perulangan (loops) sebagai inisialisasi (kondisi awal) dan batas akhir.
sintaksnya:
  1. Range(Inisialisasi, Batas)
Inisialisasi adalah kondisi awal dari fungsi range. Jika kita memasukan nilai 1, maka kita memulai perhitungan/pertambahan/iterasi dari 1.
Batas adalah kondisi untuk banyaknya data dalam range. Jika inisialisasi kita masukan 1 dan Batas kita masukan 10, maka range akan terisi dengan angka 1,2,3,4,5,6,7,8,9. Kenapa hanya sampai 9? sebab kondisi di range memiliki operand '<' , jadi semua nilai yang berada di bawah 10. Jika kita ingin sampai 10 angka, rubah saja batasnya menjadi 11. Take it easy.

contoh:
Print Range(1,10)
hasilnya: [1, 2, 3, 4, 5, 6, 7, 8, 9]
Print Range(1,11)
hasilnya: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 

2. Range(Inisialisasi,Batas,Iterasi)

Sama saja seperti di sebelumnya, tapi ada tambahan Iterasi yaitu penambahan/increment nilai. Bingung ga? contoh ada pola deret [1, 3, 5, 7, 9], pola deret ini yaitu n+2 atau [1, 11, 21, 31, 41, 51] punya rumus n+10. Jadi Iterasi ini membuat step/langkah dari range membentuk pola yang teratur. Default jika kita tidak menambahkan Iterasi di akhir seperi kasus sebelumnya adalah n+1.

contoh:
Print Range(1,10,2)
hasilnya:  [1, 3, 5, 7, 9]
Print Range(1,60,10)
hasilnya: [1, 11, 21, 31, 41, 51] 

For your Information:
Range memiliki bentuk nilai seperti [1,2,3,4,5,6]
karena ini bahasa pemrograman, kita memulai indeks nilai dari 0, bukan dari 1. jadi perhatikan contoh di atas.
Indeks ke-0 diisi oleh 1
Indeks ke-1 diisi oleh 2
Indeks ke-5 diisi oleh 6

Untuk memahami lebih dalam kita pelajari tentang Array


kasus lain:

Bagaimana jika Iterasi melebihi batas?
seperti Range(1,10,11), maka hanya akan menghasilkan nilai array : [1]
karena angka 1 (Inisialitator) masuk sebagai elemen pertama di array dan penambahan tidak tereksekusi karena sudah mencapai batas.
Jika Inisialitator lebih besar dari Batas (dalam kasus Interasi positif) ?
contoh Range(10,1), maka menghasilkan array yang kosong : [ ]
syarat minimal satu elemen yaitu elemen ke 1 (indeks 0) bisa masuk array ialah Inisialitator harus lebih kecil dari Batas. Sebenarnya Inisialitator bisa lebih besar dari batas, karena kita dalam kasus Iterasi positif, jadi tidak mungkin. 
Range dengan Iterasi minus?
Bagaimana kita bisa membuat array dari range dengan isi nilai [5, 4, 3, 2, 1] ?
dari kasus sebelumnya bahwa pada iterasi positf atau default, inisialisasi tidak boleh lebih besar dari batas, jika tidak maka akan menghasilkan array kosong. maka sebaliknya juga untuk iterasi minus.
Untuk membentuk List/Array di atas maka kita tentukan dulu inisialiasinya yaitu 5 dan batas ( ingat '<' atau '>' ) yaitu 0. Kemudian masukan iterasinya yaitu -1. maka penulisan nya yaitu Range(5, 0, -1).
Iterasi/Step dengan Nilai 0?
Saya jawab langsung, maka akan terjadi Error. Tidak ada step yang bernilai 0.

------------------------------------ || --------------------------------------