Transcript for:
Dasar-Dasar Python dan Manipulasi Data

[Musik] Hai semuanya berjumpa lagi dengan gua De afriizal apa kabarnya semuanya untuk sesi kedua ini teorinya terlebih dahulu sebelum nanti kita praktik gimana untuk sesi 1 kemarin pada lancar atau enggak kita masuk ke Sesi du teori di mana ini untuk penunjang kalian praktik di eh sesi keduanya nanti untuk yang langsung studi kasusnya tapi kita bicara teori terlebih dahulu dan juga ini sangat menarik karena kita akan bermain analogi seperti di sesi satu teori yang waktu kemarin kalian tonton masih Python untuk pemula juga dan em yang akan gua bahas kali ini adalah seputaran fundamental yang berikutnya di mana Di sesi satu itu fundamentalnya ada variabel input dan output dan juga sebuah condition masih ingat variabel itu apa input output masih ingat Ah pasti masih ingat kondisi masih ingat masih ingat dan untuk yang video kali ini kita bakal bahas fundamental seputaran tiga biji lagi ya yang pertama ada type casting hah Loh pusing l yang kedua datalist Eh lebih pusing lagi masih mau nonton ada library juga yang pertama typ casting itu untuk kita bisa ngerubah tipe data alright dari yang tadinya misalnya string di variabel Nama saya misalnyapya variabel Nama saya terus tipenya string pengin diganti jadi integer itu disebut typeecting atau sebaliknya dari integer ke string atau yang lain-lain dari berbagai macam tipe data di ubah datanya menjadi tipe data yang lainnya nah singkatnya seperti itu data list atau kumpulan nilai dalam sebuah variabel library program untuk pembantu ya oke mengenai type casting masih ingat gambar ini kardus yang di sesi satu ya lelaki kardus enggak enggak maaf mohon maaf Aduh jangan bercanda deh ya alright kita fokus lagi kardus yang isinya ada semangka ini kardus adalah si variabelnya namanya kardus semangka adalah value-nya dan Ya seperti ini kurang lebih tampilannya dan type casting itu seperti apa tadi gua di awal bilang bahwa type casting itu merubah tipe datanya alright kalian perhatikan di sini ini adalah semangka ada seorang ibu bernama Ibu Tuti yang mengambil semangka dan ibu Tuti nge-blender semangkanya terus dibikinlah semangka tersebut menjadi sebuah jus dan setelah menjadi jus dibalikin lagi ke dalam kardus alright artinya sekarang udah berubah bukan lagi semangka seperti yang sediakala sebelumnya n kalau kita lihat apakah kalian tahu ada bedanya di sini rasanya mah sama Oke tetapi karakteristiknya yang berbeda ketika lu cicipin lu cicipin itu semangka tetap ya semangka rasanya semangka cuman bentukannya sudah berbeda alright yang satu mah yang satu mah seperti itu jadi type casting yang tadinya apa menjadi apa Jadi kalau dari sintaks itu seperti apa Nah ini sebelum kita masuk ke syn type casting biar kalian paham dulu variabel yang di sesi 1 waktu itu ya kan itu bisa ditimpah nilainya begitu juga tipe data tipe data bisa ditimpah lagi nilainya alias diganti yaitu si typ casting tadi Nah kalau variabel diganti nilainya itu jadi reassignment disebutnya contoh di sini gua punya variabel tanggal lahir yang value-nya 18 di awal pendeklarasian awalnya bernilai 18 untuk si variabel tangga lalu di baris kedua gua ubah tanggal lahirnya nilainya menjadi 20 dan ketika di print untuk variabel tanggal lahir mau dikasih output ya dikeluarin gitu yang tercetak ke dalam layar program itu apa yaitu hasilnya 20 yang terakhir karena dieksekusi dari atas ke bawah untuk Python ini ya jadi tanggal lahir awalnya 18 lalu tanggal lahir ditimpah lagi dengan nilai baru yaitu 20 Maka kalau kita print yang muncul adalah tanggal lahir yang barisnya paling bawah dan untuk type casting seperti ini mainannya jadi tanggal lahir awalnya bertipe data string di situ 23 23-nya itu bukan angka tapi string ya oke dan gua bikin satu variabel baru yang namanya konversi tanggal lakhir yang fungsinya untuk mengubah yang tadinya string menjadi sebuah integer nah di situ ada keyword INT Oke in atau integer menjadi sebuah angka apa yang diubah menjadi integer buka tutup tanggal lahir artinya tanggal lahir akan diubah menjadi sebuah integer yang tadinya string dimasukin ya hasilnya setelah pengubahan atau pengkonversian itu ke dalam variabel baru yang namanya konversi tanggal lahir sehingga ketika dicetak untuk yang konversi tanggal lhir dia bertipe integer sedangkan kalau kita mencetak yang tanggal lahhir doang itu tipenya string jadi ini yang dimaksud dengan type casting versi 1 untuk versi kedua kalau kita sambungin dengan reassignment itu bisa juga sehingga kita enggak perlu lagi bikin variabel baru di situ ya kita bisa timpah langsung tang tanggal lahirnya ingat tadi di variabel itu bisa di-assign lagi nilai baru nilai awal dari tanggal lahir saat ini adalah string 23 di baris nomor 1 Oke dan di baris kedua tanggal lahir kita kasih sama dengan lagi artinya kita mau ngasih nilai Baru terhadap variabel awal yang kita punya yaitu namanya tanggal lahir ditimpah nilainya dengan INT buka tutup tanggal lahir sehingga ketika kita nge-print yang kita print adalah tanggal lahir karena cuman itu variabel yang kita punya Oke jadi type casting sudahudah Cukup jelas sampai sini untuk materi berikutnya adalah data list dat list ini Sekumpulan data di dalam sebuah variabel contoh ini adalah kardus yang isinya adalah semangka dan gimana misalkan kalau isi kardusnya ternyata ada banyak bukan cuman semangka doang tapi ada pisang ada juga nanas Apakah kita memasukkannya seperti ini ke dalam program kalau secara manusia ini oke-oke aja enggak kenapa-napa enggak ada masalah semangka koma pisang koma nanas cuman kalau di dalam program satu string yang kita punya ini di dalam quotes ini kita pisahin dengan koma pun dia terdeteksi sebagai satu data aja Oke jadi variabel kardus itu cuman punya satu data yang bertipe string yang isinya adalah semangka pisang nanas itemnya memang tiga di dalam dus tapi kalau kita ngodingnya seperti ini atau mendeskripsikannya seperti ini ini satu data dalam satu e garis kuning yang gua blok di situ Oke kalau di dalam programnya implementasinya Seperti apa ini gua punya variabel kardus yang isinya sama persis seperti yang gua kotakin di sini oke dan ini metode yang enggak baik untuk datalis ini cuman satu data dan kalau kita running program pythonnya pas kita print si kardusnya atau mau munculin output kardusnya dia muncul semangka koma pisang koma nanas dan ini cuman kayak variabel kita yang pertama kali kita e pelajarin tadi Nah kalau Aray atau list biasanya di bahasa pemrograman kebanyakannya nyebutnya Aray tapi kalau di Python Setahu gua disebutnya list intinya sama aja kumpulan dari data Oke dan biasanya simbolnya adalah sebuah siku-siku kayak gituan seperti yang kalian bisa lihat di gambar sini oke siku-siku seperti itu dan di tengah-tengah siku-sikunya adalah pendeklarasian nilai-nilainya Contohnya kayak gimana Bang Nah ini contohnya kurang lebih kalau kita punya banyak data di dalam sebuah variabel kardus ada semangka ada pisang ada nanas koma-komaannya tetap sama tapi stringnya itu per masing-masing Bendanya itu si semangka punya string sendiri pisang punya string sendiri terus koma nanas punya string sendiri dan dan dibungkus oleh si siku-siku itu ini menunjukkan kita punya satu variabel dengan banyak Data Oke sini berarti Datanya ada berapa ada tiga biji semangka pisang nanas dan kalau kita praktikin secara program gua pakaiin siku-siku Di situ gua kasih string permasing-masing Bendanya gua kasih koma juga sebagai pemisah dan ketika gua print semuanya akan terpisah semangka ya semangka pisang ya pisang ya nanas ya nanas gitu mau dipisah mau disatuin It's OK enggak masalah karena kalau udah dimasukin ke datalist atau ee Aray kayak gituan kita jadi bisa manage lebih dalam seputar e benda-benda yang ada di dalam variabelnya kalian bisa lihat ada tiga data yang diikutin oleh siku-siku ya Berarti mulai dari setelah siku-siku pertama itu adalah data pertamanya semangka diikutin yang kedua adalah pisang yang ketiga adalah nanas dan ketika diprint ini gua pakai sintaks yang namanya Len l e n oke untuk menghitung panjang data dari mana dari variabel apa tuh lihat Len buka tutup kardus artinya gua pengen ngitung panjang data si kardus Len itu leng atau panjang alright jadi kardus punya data panjangnya berapa panjangnya adalah tig karena apa Karena isinya pun memang tiga data kalau kita hitung satu semangka dua pisang nanas alright dan kalau kalian lihat ke sintas gue yang sebelumnya di slide yang tadi awal-awal kenapa gua mencetaknya seperti itu kardus siku-siku nol untuk ngeluarin sebuah output ya kardus siku-siku satu kardus siku-siku du kenapa seperti itu bang jadi kalau kita udah bikin Aray kita bisa ambil satu persatu Bendanya untuk kita keluarin atau kita proses kita olah bisa tapi kalau cuman satu string doang alias seperti yang di awal tadi yang kita bikin ee kayak gini nih ini ini kita susah ngolahnya mau ngambil pisang doang susah nih mau ngambil nanas doang susah nih tapi kalau udah di dalam Aray cara pengambilannya tinggal seperti ini kardus nol artinya semangka kardus sat artinya pisang kardus 2 artinya nanas ada pertanyaan pasti harusnya ada pertanyaan kalau kalian nyimak dengan baik harusnya ada pertanyaan perhatikan di sini mana ya lihat 1 2 3 satu semangka dua pisang nanas Lalu kenapa di sini Gua manggil 012 bukan 1 2 3 ah kalau kalian nyimak yang benar-benar fokus Kenapa sih Bang Dea di situ masukin nol Ya kenapa satu Kenapa dua Tadi katanya cuman 1 2 3 kok tiba-tiba ada 0 dan ol0 adalah semangka satu adalah pisang dua adalah nanas enggak sesuai itu kayak gimana tuh Bang oke karena di dalam sebuah Tipe list Oke atau Aray itu ada yang namanya indeks alright nah formatnya kan seperti ini siku-siku A B C D E F G sampai z tuh secara bahasa pemrograman Arai itu biasa dimulai dari 0 indeksnya kalau kita sebagai manusia bilang e urutan nomor sesuatu itu 1 2 3 4 5 6 tapi kalau bahasa pemograman dia mulai dari 0 khusus untuk arah ini dan kita sebut namanya indeks jadi a di sini adalah indeks ke0 B indeks kees C indeks kedu Tapi kalau bicara bahasa manusia a adalah data pertama b adalah data kedua c adalah data ketiga jadi ada separasi di antara keduanya gitu loh kalau bahasa manusia ya 1 2 34 Kalau bahasa pemograman ya 0 1 2 3 untuk urusan Aray dan yang namanya Indeks ini kalau kalian masih bingung eh penggambaran semangka pisang nanas ini silakan coba pikirin tadi ah gua kasih contoh di mana A adalah 0 B1 C2 maka indeks dari kardus semangka kardus pisang kardus nanas ya untuk semangka itu berapa indeksnya silakan dipikirkan betul no0 untuk pisang adalah 1 untuk nanas adalah 2 That's good makanya di kodingan gua gua tulis seperti ini kardus 0 kardus 1 kardus 2 karena gua tahu 0 adalah yang pertama satu adalah yang berikutnya dua adalah yang terakhir di variabel kita untuk yang variabel kardus Oke jadi tebakan kalian udah benar ya semangka 0 pisang 1 nanas 2 dan kalau gua tanya sintaks kardus sikuiku no0 ini artinya Apa artinya memanggil ee benda semangka atau sebuah semangka khusus spesifik di dalam variabel kardus ketika Si runtunan data ini punya indeks kita sebagai programmer bisa manggil indeksnya supaya bisa ngeluarin value-nya kalau misalkan di program kita pengin ngeluarin eh sebuah apa ya kata-kata pisang di dalam variabel kardus yang kita lakukan adalah kardus siku-siku satu karena kita tahu pisang ada di indeks nomor satu kurang lebih detailnya seperti ini kalian bisa lihat kardus 0 itu ngarah ke semangka kardus 1 ngarah ke pisang kardus 2 ngarah ke nanas Cukup jelas untuk seputaran e indeks Aray ya 0 1 2 dan seterusnya kalau tanpa siku-siku diprint munculnya Seperti apa bang munculnya seperti ini semangka pisang nanas Anggur jeruk Oke dan kalian bisa lihat ada siku-sikunya plus separasi by koma by ques kayak gitu ini menunjukkan tipe datanya adalah Aray atau Lis Oke kita Next step lagi di mana sekarang Eh gua ngasih lihat bahwa kalau kita udah punya variabel yang bertipe data list atau bertipe data Aray kita bisa manage lebih enak lagi Per masing-masing Bendanya oke di sini kan buah-buahan Nih ceritanya kardus.apen artinya variabel kardus gua isi lagi dengan nilai baru di baris kedua gua isi dengan nilai baru yang namanya Anggur so secara imajinasi anggur bakal masuk ke sebelah nanas di dalam urutan e isian kardus Oke jadi kardus isinya awalnya semangka pisang nanas dan gua upen kardus tersebut dengan buah baru yaitu anggur jadi anggur adalah data yang keempat dan gua upen lagi jeruk berarti jeruk data yang kelima kalau secara indeks indeks semangka itu masih nol oke yang pisang itu masih satu yang nanas itu masih dua yang Anggur Itu jadi tiga yang jeruk adalah jadi empat ketika gua print kardus dengan buka tutup 4 karena jeruk ada di posisi indeks tersebut maka ketika kita jalanin programnya jeruklah yang muncul ke sini oke cukup mengerti di sini Kenapa kita mainin Aray sebagai seorang programmer banyak yang mainin Aray untuk kebutulan mengelola data pastinya biar seenggaknya hal-hal seperti ini bisa kita lakukan gitu pentingkah penting ketika kita integrasi dengan e payment Gateway misalnya atau dengan sistem ya pokoknya yang orang lain punya terus kita pakai juga sistemnya atau kerja sama kayak gitu itu biasanya mereka ngirim data berupa Aray ataupun berupa objek ya pokoknya panjang sampai kayak gitu dan kita kalau enggak bisa mainin arainnya itu akan kepusingan pastinya so materi Arai ini cukup penting untuk awalan kalian cukup pelajari ini terlebih dahulu oke cukup paham sampai sini kita move ke yang berikutnya pertanyaannya buat kalian semuanya apa yang terjadi kalau gua nge-print kardus dan di dalam siku-sikunya gua melakukan sebuah pengurangan nilai 4-2 menurut kalian yang akan keprint yang mana yang akan keluar menjadi output coba silakan tebak dulu gua mau ngopy terlebih dahulu ya bentar Mari kita coba cek bersama-sama secara sintaks dan hasilnya ya Di mana ketika gua ngeprint pakai kardus Eh pakai kardus ng-print kardus pakai siku-siku 4 - 2 yang mana 4 - 2 adalah 2 berarti indeks kedua indeks kedua adalah 0 semangka sat pisang 2 nanas Oke jadi yang keprint di situ adalah nanas mengerti sampai sini kalau misalkan 5 - 3 berarti berapa 5 - 3 2 ya tetap nanas-nanas juga kalau misalkan 5 - 5 itu berarti 0 0 adalah apa di sini kardus indeks ke nolnya adalah semangka kayak gitugitu kalian bisa eksperimen mau kali-kalian mau bagi-bagian yang penting datanya sesuai aja gitu ada di situ kalau kalian salahin ya enggak akan ada enggak akan muncul apa-apa Oke penjabaran detailnya kurang lebih seperti ini yang terjadi ketika kardus 4 - 2 ya 4 - 2-nya bakal dikurangin terlebih dahulu ada kalkulasi di situ dan menghasilkan angka 2 ini setara dengan print kardus 2 kayak gitu polosan persis seperti itu Maka hasilnya akan nanas yang tadi ya Ini step by step yang terjadi ketika kita running program nya dan berikutnya adalah terakhir ya terakhir seputaran libraryi sebelum kalian praktik nih untuk yang e sesi keduanya karena cukup menarik kita bakal pakai sedikit library library itu apa Bang jadi library ini adalah sesuai artinya pustaka Anjir perpustakaan kalau di dunia pemrograman library ini biasa kita pakai untuk mempercepat proses development sebuah e aplikasi ataupun Project apa yang lagi kita kerjain ya Di mana ketika kita pakai library sintaks yang tadinya harusnya 1000 misalnya bisa jadi 10 atau 20 baris aja Misalkan contoh seperti itu dan library itu ada banyak banget banyak orang yang nyiptain library juga dan dipublish ke internet sehingga kita sebagai developer bisa saling pakai dan library biasanya open source jadi banyak komunitas yang mengembangkan sebuah libraryi dan terus meng-update library tersebut jadi library ini sebenarnya sekumpulan program-program yang dipunyain sama orang yang bisa dipakai sama developer lainnya biar developer lainnya enggak perlu banyak-banyak coding sesuatu kalau misalkan memang program tersebut sudah ada kita bisa pakai Jadi kurang lebih seperti e Misalkan gua pakai topi nih ini topi Anggaplah sebuah library kita pakai topi dan tanpa topi pun kalau di dalam ruangan kan enggak masalah sebenarnya benar enggak nah kalau Gua pengin pakai topi pilihannya ada dua gua bikin sendiri topinya ngerajut pakai kain gini terus gua pakai sini atau kita pergi ke toko terus kita beli topi terus kita pakai topinya Des udah bagus waktu lebih efisien Oh semua orang pada pakai artis-artis pakai merasa gaya Kayak gitu-gitu tapi untuk di dunia program rada sedikit berbeda contohlah di sini gua punya sebuah library namakanlah ini library punya dea library Dea Oke gua punya program sat program 2 program 3 program 4 dan program 4 ini adalah program yang gua bikin untuk menghitung Grade nilai atau memunculkan grade dari sebuah nilai misalnya user ngetikin nilai 90 grade-nya berapa ya kalau 90 a misalnya atau user ngetikin 30 berapa grade-nya D kayak gitu-gitu tadi kan gua punya empat program dan salah satu programnya program keempat itu adalah program perhitungan Grade nilai dan kalau diimplementasiin di dalam sebuah snx misalkan lu ngoding Python Terus lu pakai library gua ini yang mana library gua peruntukan untuk menghasilkan sebuah grade dari sebuah nilai kurang lebih sintaksnya seperti ini from librarydea.grade jadi gua tuh punya function atau punya e sebuah synx program seperti kita ngoding biasanya cuman gua publish Katakanlah dan lu pakai Cara pakainya from libraryidea.grade import grade atau ambil grade F fun punyanya si da ambil codingan grade punyanya da Terus tinggal dipakai Cara pakainya tinggal kayak gini lu punya variabel nilai ama 82 Terus lu passing nilai tersebut ke function yang gua punya yaitu si grade tersebut Oke jadi panggil library yang gua punya itu namanya library grade tulis grade-nya buka tutup masukin nilai kita berapa karena ini sesuai dengan namanya library-nya untuk apa ya library-nya fungsinya untuk menghitung grade jadi di sini harus memasukkan nilai terlebih dahulu Kalau enggak error seperti itu grade buka tutup nilai nilainya adalah 82 jadi nilai 82 itu berapa sih grade-nya langsung ketika diunning programnya muncul nilai 82 mendapatkan grade B tanpa harus kita Menghitung kalkulasi dari mana ini coba tiba-tiba nilai 82 dapat grade B Padahal kita enggak ada coding-coding di sini untuk nge-print nilai mendapatkan bla bla bla enggak ada dari mana Dari library library bisa kita ciptakan sendiri bisa kita bikin sendiri untuk kita pakai sendiri bisa kita bikin untuk dipakai orang lain Terserah lu jadi apa yang yang gua lakukan di sini anggapannya adalah gua punya library dan El pakai library gua dengan cara yang seperti ini yang seharusnya kalau lu enggak pakai librari gua lu bakal ngoding yang kayak gimana Kayak begini ngodingannya oke 12 baris melawan baris saja alright ini kalau kita enggak pakai library gua yang tadi dalam kasus untuk mengeluarkan sebuah outputan grade dari nilai yang diinputkan oleh user kita harus bikin validasi dulu condition ke materi sebelumnya yaitu if nilai lebih dari 90 maka print Apa elif nilai lebih dari 80 harus nge-print apa elif lagi else-nya kayak gimana Belum lagi yang lain-lainnya ini baru contoh yang sederhana jadi di Python kebetulan library itu sangat banyak dan bisa kalian pakai dan bahkan Enggak cuman sesederhana ini library-nya ada banyak library yang kita bisa pakai untuk kayak macam face recognition atau machine learning ai kayak gitu-gitu di Python tuh banyak jadi manfaatnya apa aja kalau kita pakai library yang pertama development jadi lebih efisien seperti yang tadi gua jelaskan kan ee waktu pengerjaan untuk ngoding-mkodingnya jadi lebih cepat cuman satu dua baris sudah lu bisa ee melakukan hal yang mungkin sebelumnya Lu harus e 10 menit lu bisa jadi 1 menit Sudah kelar gitu Terus yang kedua untuk mempermudah developer sudah pasti biar gampang karena misalkan kita enggak pakai library face recognition untuk mendeteksi wajah manusia misalnya kita beneran ngoding sendiri dari nol tuh gila itu sintaks mungkin sampai mana Tuh tapi kalau pakai library itu sintaks bisa tiga baris dan cukup mudah dipahami kita tinggal kita pakai langsung berfungsi Jadi mempermudah kita juga gitu dan abstraksi program untuk apa abstraksi biar menutupi kerumitan yang ada di library tersebut jadi misalkan kita enggak pakai library nih yang terlihat Ya seperti tadi kayak gini codingannya jadi kayak panjang banget gitu kan tapi dengan pakai library user udah bisa ngebaca bahwa Oh library dea.grade Oke ngambil grade dari library-nya si d terus grade-nya dipakai dikirim nilai nilainya 82 dan menghasilkan output yang seperti itu jadinya ada level abstraksi di dalam programnya biar kerumitan-kerumitan yang terjadi di dalam sebuah program tidak terlalu terekspos oleh eh programmernya atau programmer lain nanti ketika kerja tim alright lalu yang berikutnya adalah reusable reusable artinya supaya bisa digunakan berulang-ulang jadi misalkan ketika lu punya project lainnya lu pengin pakai function yang sama seperti ini kalau ini enggak dijadiin library Lu harus ngoding lagi kayak begini kayak begini kayak begini tapi ketika ini satu blok dijadiin sebuah library yang mana Nanti kita bakal pelajari juga cara membuat library di sesi-sesi berikutnya Seperti apa tapi intinya ketika lu punya library itu menjadi reusable karena kita bisa pakai langsung seperti ini di banyak Project eh yang kita running gitu Misalkan kita punya tiga projectan dan ketiga projectan tersebut mengandung fitur ini untuk menghitung grade berdasarkan nilai dari si e inputan usernya gitu ya yang berikutnya ada stay up to Dead Di mana misalkan Eh ada sebuah perubahan di versi baru Python nih terus kita sudah pakai library yang kita pilih di salah satu stornya ibarat kata seperti itu kita milih library mana kita pakai kita tempel Taruhlah yang library grade deh ya dan ketika gua sebagai seorang yang punya library pengin nge-improve library-nya dan melihat bahwa ternyata Python ada update nih secara sintxs gitu bisa jadi lebih bagus lebih efisien pakai sintaks ini gua ngikutin nih perkembangan tersebut dan gua update si library yang gua punya ketika lu pada pakai library gua artinya lu bakal ikutan stay up to de juga nah kurang lebih seperti itu hal sederhananya seputaran stay up et dari sebuah library Oke dan juga integrasi dengan sistem lain jadi lebih mudah contohnya yang tadi gua bilang itu payment Gateway shipping method kita harus koneksi ke JNE jnt dan lain-lain payment Gateway harus ke mitrans sendit dan teman-teman yang lainnya semua itu kalau kita ngoding sendiri kayaknya enggak bisa kita harus kontakkan sama mereka nanti mereka ngasih kayak dataalis yang tadi kita sudah pelajarin plus juga ngasih rules-rules tertentu dan juga kadang mereka ngasih library supaya mempermudah kita sebagai developer untuk mengintegrasikan sistem sistem yang kita punya dengan sistemnya mereka seperti itu itu keunggulan dari library dan masih banyak lagi keunggulan lainnya tapi tentu saja banyak problemnya dan tergantung juga dengan library-nya kita pilih yang mana ya jadi kesedihan-kesedihan ketika kita pakai library itu beberapa di antaranya ada performance overhead terkadang orang enggak tahu pakai library tapi sebenarnya Enggak semua isi dari library-nya kita pakai library itu kan isinya codingan-codingan juga sama seperti kita ngoding biasanya yang mengakibatkan projek kita size-nya jadi lebih gede gitu kalau bicara performance ini memang sangat luas cangkupannya tapi salah satunya misalkan lu pakai library yang enggak tahu kayak gimana juga dan isian kod-nya membuat sistem lu ternyata malah kayak enggak benar malah jadi lambat lah atau jadi loading-loading terus atau kayak gimana gitu ya merusak e sesuatu hal di dalam projectan Lu karena library ini bisa dibikin sama siapapun developer di luar sana bahkan yang lagi belajar juga bisa bikin library ya kan Terus dipublish dan enggak sengaja luemu library tersebut sintaksnya ternyata di situ ada kayak battleene Atau segala macam hal yang membuat eh RAM jadi otomatis tinggi atau CPU loadnya jadi naik atau kayak gimana Kayak gitu-gitu Ya intinya ada COD yang mengganggu jadi ketika lu pakai tanpa lu sadari ketika lu ngoding di rumah Gitu ya kayak lancar-lancar aja tapi ternyata pas dipublish di-share ke sana sini terus pengguna yang pakai e sistem l Ternyata banyak dan Bu karena kita enggak tahu isi dari library itu seperti apa sintaksnya Apakah membuat e Side Effect terhadap projject kita atau enggak Nah itu adalah sebagian efek dari penggunaan library terhadap program yang kalian punya kompatibil ataupun Conflict isue itu Mirip juga Jadi kurang lebih ketika misalkan kalian download library apa terus Kalian pakai dan 3 tahun kemudian ternyata bahasa pemrograman atau Framework atau library yang kalian pakai itu enggak up to date nih sedangkan ketika kalian masukin program ke server server membutuhkan versi a b c d FG lu ikut ke server untuk upgrade program lu tapi library yang lu pakai enggak ikutan upgrade sehingga menimbulkan konflik dan compatibility isues terus ada hard to maintenance ya artinya susah dirawat karena memang kita enggak ngerawat yang ngerawat kan si orang-orang yang bikin E library-nya atau dengan komunitasnya atau kita mau kontribusi ya boleh-boleh aja Atau kita mengubah langsung sintaks librarynya itu bisa aja tapi kan kita enggak tahu awalan kali itu Project berjalan tuh si library sintxsnya flow-nya Seperti apa Jadi malah nambah learning Curve atau kita harus belajar Lagi belajar Lagi belajar Lagi untuk ngurusin libraryi orang terkadang kayak gitu ya jadi enggak selalu kita harus pakai library tergant ung kasusnya Oke dan juga berikut dengan customize limitation atau misalkan lu pakai library apa ternyata Lu butuh meng-custom si library-nya nih enggak bisa kalau gini doang pengin ada tambahan apa dan lu kep pusingan karena lihat codingannya itu punya orang dan enggak tahu awal kali flow-nya Seperti apa jadinya banyak limitasi sebenarnya ketika kita pakai library kalau apalagi kalau ya apalagi kalau enggak sesuai librarynya dengan kebutuhan kita punya dan yang terakhir adalah addiction jadi terkadang kita terlalu E apa ya udah dimanjakan sama yang namanya library jadi Jadi kita pakai terus library jadi satu program kita isinya full library semua program kitanya makagak ada dan lu enggak tahu konsekuensinya apa dan lu enggak sadar Wah itu cukup berbahaya ya Jadi kurang lebih untuk materi sesi duanya secara teori seperti itu aja semoga lu bisa lancar Dalam praktiknya nanti ke depan kalau gagal pun semangat dan jangan menyerah langsung tanya di kolom komentar barangkali ada teman yang lain yang udah berhasil dan bisa saling berbagi ke el untuk keberhasilannya dia ataupun ada yang error serupa terus Kalian saling chatting chattingan dan saling membuat tim sampai punya startup sampai jadi CEO sampai dapat investor sampai jadi terbesar se-indonesia sampai jadi internasional Wah gila amin Hai sesi kedua tidak terasa sesi satu kalian sudah ikutin bagus banget ya tugasnya kayak gimana Apakah udah dikerjain atau belum nih jangan-jangan belum dikerjain enggak boleh kayak gitu ya bisa-bisanya udah dibikinin video panjang enggak dikerjain tugasnya Mari kita coba kerjain kalau ada yang masih belum mengerti ya seputar tugas gasnya untuk di sesi sat adalah Gimana caranya ini si program yang udah kita jalanin yang udah kita bikin coba runing dulu sekali sesi dua nih ya he kita coba nyalain pymain.py Masih kelihatan kan alright Masukkan nama De afriizal kelihatan enggak sih kelihatan seharusnya sih Dea Afrizal Halo De Afrizal coba perhatikan gua di bawah ini 1 2 3 4 berapa Nah pas ketik empat itu harus muncul notifikasi dulu kayak satu inputan baru Apakah yakin ingin melanjutkan proses berikutnya dengan jawaban empat ini atau enggak kayak gitu ya teng Kalau ini kan langsung ya selamat menang Anjay jagoan banget gua langsung menang ya tumben cobain sekali lagi bentar enggak usah dah lama udah kita kerjain aja langsung tugasnya Em Jadi untuk bikin inputan ketika user udah dapat pilihan seperti ini ya pilihan user ini variabelnya pilihan user masih ingat yang yang kemarin materinya jangan lupa ee diingat-ingat lagi ketika user mengetikkan pilihan user maka di sini kita bikin nih Untuk konfirmasi user jadi kita bikin konfirmasi pakai bahasa Indonesia aja kali ya boleh ya Indonesia Inggris Inggris deh campur Sar mohon maaf nih bagusannya sih kalau Inggris Inggris semua Indo Indo semua aja kayak gitu confirm answer alias konfirmasi jawaban sama input e pakai f lagi di depan seperti biasa masih ingat kan F untuk apa format atau biar bisa masukin variabel ke dalamnya Gua sebenarnya gak tahu sih F itu singkatan format atau apa tapi yang gua tahu biar bisa masukin variabel ke dalam sebuah outputan string kayak gini Apakah kamu yakin jawabannya adalah ya jawabannyaal dari variabel pilihan user pakai kurwal Kasih tanda tanya buka tutup seperti ini yes atau no Gini set SPI ketika Yes maka lanjut kalau no hentikan aja programnya nanti dijalanin lagi Oke gimana cara validasinya ini kita coba running dulu aja apakah berfungsi atau gak ini inputan make satu persatu dulu coba jalanin ya pencet ini itu lagi ada di posisi dua nih kayaknya kita coba dua enter langsung Apakah kamu yakin jawabannya adalah 2 y or n ya yes atau tidak misalnya gua pencet sembarang Nih kayak gini wah tetap ngelanjut ah enggak boleh kita harus validasi kita coba Bikin validasinya terlebih dahulu Caranya sederhana berarti pakai if else if apa bisa coba dikumandangkan di dalam hati if confirm answer Nah kayak gini confirm answer sama dengan sama dengan kasih string karena ini tipenya string inputan tu ya sama dengan sama dengan n atau no maka Apa yang akan kita lakukan jika tidak maka Apa yang akan kita lakukan di sini kan gini formatnya kurang lebih ya Loh els-nya kenapa rusak gua ya bentar apakah karena gak ada jawabannya ini Oh ya udah biarin dulu kita Cobain dulu ya jika jawabannya no kita bakal print em sesuatu hal program dihentikan misalnya program dihentikan terus kita exit nah ini ada function bawaannya yang namanya exit bawaan Python biar programnya udah kelar dari terminalnya ke exit gitu klik aja exit buka tutup seperti ini dah kita Cobain dulu save artinya cuman muncul syntax sprint ini bakal dieksekusi ketika user memencet tombol n di keyboard alright kita coba jalanin pencet ini langsung BEM nama defriizal jawabannya misalnya kalau gua mencet n print tersebut harus muncul dan programnya berakhir BEM program dihentikan validasi sat sudah selesai tinggal yang yes-nya kayak gimana nih nasibnya ya rzal Yah Tipo tig misalnya enter Apakah kamu yakin jawabannya adalah 3 misalnya y kamu kalah ini y tetap ngelanjut tapi juga kita coba running lagi ya De Rizal 3 Misalnya ini terus ininya gua terserah kita enter tetap ngelanjut juga karena y-nya belum tervalidasi betul jadi kita bakal bikin validasi untuk yang y juga ini jika yang no dan else-nya ada di sini else kita Mau ngapain Kita mau jalanin ini program ini eksekusi program yang berikutnya betul artinya ini tinggal ditarik aja ke atas ingat di Python ini tab Taban berfungsi ya ada indentation di sini nih if satu baris blok di dalamnya adalah isi dari si if-nya Jadi kalau pengen else isinya itu adalah lanjutan dari programnya ini kita cut ya back back back nih di area sini Setelah titik du else enter kan langsung ng-etap sini tempel alias paste error lagi perhatikan kenapa Karena di dalam if ini posisinya berantakan sekarang kita harus tab tab tab lagi sesuai urutannya ini bisa Diab karena print yang ini adalah bagian dari if yang ini dan else yang ini adalah dari if yang ini kita tap lagi print yang ini adalah bagian dari else yang ini jadi di Tab lagi maaf tab-nya di posisi kursor yang sebelah sini tab programnya aman kita coba save dulu Cuman sintaksnya Memang agak jelek saat ini nanti di sesi berikutnya kita bakal bikin cantik si codingannya tenang aja jadi untuk saat ini yang penting kita bisa jalanin programnya terlebih dahulu dengan lancar ini kita save kita cobaan lagi ini gua clear dulu py.py enter kalau kita pcet e angka misalnya berapa ya satu aja terus kita pencet no harus exit udah aman kita coba running sekali lagi Ini aman ya program dihentikan dan keluar dari terminalnya atau dari eksekusi programnya clear py.py sekarang yang iahnya Masukkan nama kamu misalkan nama gua deh ya jawabannya t dan kita pencet y maka dia akan melanjutkan ke yang berikutnya tapi kalau misalkan selain dari dan n kayak gimana Apakah ini masih masalah atau enggak kita cobain py main.py 2 kita pencet P misalnya Harusnya kita ngetikin Y atau n tapi kita pencet P kita enter bum Masih lanjut ke yang berikutnya karena else itu adalah pengecualian ya perhatikan di sini else itu pengecualian selain dari n Oke jadi mau a b cdfg apapun itu selain dari n dia bakal mengeksekusi yang ini so Kalau pengin mengeksekusi khusus yang ini maka kita bisa tambahin di sini namanya elif elif kayak gini confirm answer samaama y akan ke sini elif itu artinya setelah if jadi pengin banyak kondisi itu bisa elif pakainya misalnya if apa elif apa elif apa elif apa else else yang pengecualiannya ngerti enggak maksud gua jadi elif posisinya ada di tengah-tengah setelah if dan sebelum else itu LC if lah ibarat kata seperti itu dan diakhiri dengan El jadi urutannya seperti ini print berakhir mis nah kayak gini if jawabannya n dari user maka program dihentikan confirmama y jawaban dari user pas konfirmasi jawaban itu y ya maka eksekusi yang ini tap jika selain dari y dan selain dari n apa yang mau kita munculin adalah silakan ulangi programnya gitu dan kita exit lagi di sini coba save Coba kita running lagi bersama py.py of 3 Y or no kita coba pencet sembarangan O Misalnya p q rsahah kita enter silakan ulangi programnya Arya ini sudah berfungsi jika n berhenti program jika y maka dilanjutkan selain dari N dan selain dari y maka masuk ke else mengerti maksud gua untuk yang elif ini untuk tugas yang sesi 1 kemarin cukup mudah Siapa yang berhasil give Applause Nah untuk sesi du kita mulai e bikin satu file baru untuk belajar terlebih dahulu sebelum masuk ke studi kasus yang bakal kita lakukan tetap di program yang ini juga Tapi akan lebih menarik jauh lebih menarik perhatiin aja nanti kita buka explorernya terlebih dahulu BEM bikin satu file untuk kita melakukan testing dan pembelajaran lah ya kasih namanya misalnya testing do atau Test doang deh test.py boleh kita akan belajar di sini terlebih dahulu materinya untuk bisa masuk ke studi kasus berikutnya adalah seputaran Arai kita coba sedikit ya misalkan ee gua punya sebuah variabel Taruhlah namanya hobi kita bikin di sini hobi yang isinya adalah hobi banyak nih manusia hobinya lu hobinya apa aja gua hobinya apa aja siapapun punya banyak hobi contoh gua hobinya adalah main bola misalnya main bola terus gua juga suka e berenang gua juga suka ngoding ada tiga ini formatnya satu buah string karena ada di dalam satu bungkus ini nih string ini Jadi ini sebenarnya satu data Oke ini sebenarnya satu data kalau kita print It's ok Ini aman print hobby coba running pencet yang ini kelihatan main bola berenanging bentar clear dulu biar enak Coba runing lagi main bola berenang nging aman-aman aja tapi datanya sat gimana kalau kita mauuar a yang berenang doang hobi gua yang kedua itu hobinya berenang coba munculin ke layar silakan kalau pakai Aray itu bisa tapi kalau kayak gini bisa cuman susah caranya jadi kalau pakai Aray kita ubah nih hobi hobi hobi yang versi bahasa Inggris deh ya variabelnya karena hobi yang ini udah kita pakai satu data untuk hobi yang ini atau kita ganti Pak hob G Bi banyak hobinyaak Aray ini mainan Aray buka tutup siku-siku di dalamnya ada string hobi pertama main bola main bola hobi kedua berenang pakai string lagi berenang hobi ketiga nging Oke terlihat sama cuman dibungkus pakai siku-siku kotak doang efeknya apa kita coba print ya ini print untuk yang hobi di atas kita ke atasin dulu sini dan satu lagi print untuk yang hobi Aray hobes yang ini coba save dan kita bakal coba Run pencet ini lihat di sini jawabannya yang hobi pertama satu data ini menjadi seperti ini string satu data sedangkan hobi kedua itu ada bracketnya di sini bukan bracket ada ya itu ada siku-sikunya plus ada bentukan kutipkutip di sini kutip kutip kutip kutip ini mau kutip S kutip du boleh ya mau kayak gini bisa ataupun kutip du bisa semuanya bisa memang di pyon matip kutip dua di JS juga sama kayak gitu Jadi mau satu dua ya aman terserah dulu di sini gua pakainya dua dan perhatikan di sini ada siku ada koma juga nah ketika kita punya data yang berupa Aray dan seseorang meminta hobi kita yang kedua yang kedua e dalam pelafalan ya pelafalan itu seperti hobi gua yang pertama adalah main bola satu nih hobi gua yang kedua adalah berenang hobi gua yang ketiga adalah ngoding yang kedua apa berenang dalam program kalau mau ngeluarin si berenang ini berenangnya doang ketika ditanya hobi lu yang kedua apa kita bisa akses data Aray yang ke berapa terserah kita pakai buka tutup seperti ini ketika pemanggilan variabelnya ini variabel hobis dipanggil di sini diprint ya Panggil kasih buka tutup sikunya dan nomor berapa yang mau lu keluarin misalnya Dua tadi kan ya Tapi sayangnya Ketika seseorang minta hobi kita yang nomor dua yaitu berenang pas kita jalanin programnya coba tidak sesuai ekspektasi perhatikan kita Run BM yang keluar di sini malah ngoding padahal hobi kita yang kedua adalah berenang Kenapa karena ketika kita punya data aray di dalam pemograman itu ada yang disebut indeks namanya indeks mulainya dari nol jadi data yang ada di dalam Aray itu mulainya dari nol bukan dari satu kalau kita sebagai manusia ee me mendeskripsikannya berdasarkan 1 2 3 tapi kalau program itu mendeskripsikannya berdasarkan 0 1 2 3 4 kayak gitu sehingga kalau di sini punya data 1 2 3 data secara manusia maka secara program pelafalannya mulai dari 0 1 2 artinya ini ada nol main bola satu berenang dua ngoding so kalau kita di sini masukin hobbiis buka tutup dua nolnya main bola berenangnya satu duanya adalah ngoding maka wajar outputnya nya muncul ngoding di sini kalau pengen munculin yang berenang berarti hobi satu kayak gini save kita coba running lagi start sekarang kalian bisa lihat sebelumnya itu nging kalau sekarang sudah berubah menjadi berenang sesuai urutan tapi lu bakal kepusingan di sini karena orang mintanya data yang kedua Tapi kita masukinnya data yang kesatu so lu bisa akalin dengan cara seperti apa orang mintanya nya dua oke dan kita save Biarin aja munculnya kan ngoding nih mana tadi munculnya kan ngoding kita clear dulu pytes.py munculnya nging di dalam sini kita bisa melakukan perhitungan terserah El sesimpel ini lu bisa melakukannya kalau pengin tetap munculin di sini awalnya dua tapi kita pengin outputnya berenang kalau pengin menyamaaratakan bahasa program dengan bahasa manusia secara p an indeks yang 012 dengan 123 maka ini kita kurangin aja 1 kayak gini 2- 1 Oke si minus1nya itu biarin aja biarin aja kayak gitu atau lu mau bikin variabel baru di sini boleh ya Misalnya contoh variabelnya adalah index idx boleh atau indek gini boleh sama dengan 1 Oke so 2- Ind sama aja artinya 2 - 1 itu berapa 1 jadi hobis yang urutannya sat itu mana ini 0 ini 1 tetap berenang ketika kita Run perhatikan di sini berenang tetap berenang aman ngerti enggak maksud gua Jadi kalau misalkan ada seseorang lagi yang minta eh hobi lu yang ketiga dong gua pengin tahu ganti aja Langsung di sininya tig save running lagi nging hobi yang ketiga moding jadi ggak perlu pikirin yang di kanannya karena kita kurangin berdasarkan indeksnya itu satu kalau pal yang lebih enak ini bisa diganti dengan e misalnya start from kayak gini start from kayak gini jadi mulai data tuh dari sat bukan dari 0 jadi kita bisa masukin start from ke area sini biar ketika orang minta data hobi lu yang pertama apa S aja sini udah Lu save 1 di- 1 berarti 0 0 di di dalam hobis ini yang mana yang main bola kalau 2 2 -ur 1 berapa 1 1 di dalam variabel hobis yang mana 0 1 kalau ini 3 maka 3 - 1 adalah 2 data kedua dari hobis yang mana 0 1 2 Cukup jelas untuk Aray kurang lebih seperti ini yang berikutnya kita coba mainin temporary data misalkan yang ini kita hapus dulu ya Em gua di sini punya temporary data kita bikin dulu variabelnya contoh namanya tmp his yang menampung nilai hobbiis ini artinya apapun yang ada di dalam variabel hobbies ditampung lagi ke dalam variabel TMP hobbies gitu Oke kalau kita print di sini TMP hobbiis TMP hobisnya ini gua awasin dulu ya print yang ini r juga gua awasin dulu ya jadi kayak gini aja kita print TMP hobis dan kita print di sini untuk yang hobisnya hobis bisa Lu tambahin kayak e f dulu biar lebih enak gini ini hobis kasih kayak gini boleh biar lebih jelas logingnya F ini TMP hobbies Nah kayak gini kita coba jalan dulu apakah ada bedanya atau enggak enggak ada secara output Enggak ada bedanya py m eh sori test.py hobis itu nilainya ini dan TMP hobis nilainya ini udah cukup paham sampai sini jadi bisa dicopy ke sini manfaatnya buat apa misalkan kita mengubah data nih mengubah data sesuatu hal lah pokoknya untuk bagian yang TMP hob TMP hobis gua pengin misalkan e si berenang itu Bu bukan berenang kita manipulasi misalnya contoh saat ini hobisnya itu main bola berenang dan ngoding tapi di TMP hobis gua enggak mau sama gua pengin yang berenangnya Terganti jadi cara ngaksesnya adalah TMP hobbiis Ini kan udah punya nilai nilai yang sama Ya seperti yang hobis kasih buka tutup seperti ini mau akses data yang mana misalkan data yang berenang mau kita ganti nih ya jadi berenang ini urutan yang ke berapa indeksnya indeks arraynya 0 1 maka kita masukin sini sat mau diganti sama apa Data berenang misal kan sama Bar Bar kayak gini hap kalau udah kita coba print TMP hobbiis-nya print F TMP hobis TMP hobbiis artinya apa pertama kita punya eh variabel hobis yang menampung data Aray 1 eh sori 0 12 ada tiga data dimulai dari data ke nol main bola data pertama berenang data ke Aduh susah banget nih bahasa manusia dan bahasa program nih ya urutan indeks keol itu main bola urutan indeks keesatu berenang urutan indeks kedua ngoding setelah itu data hobis ini kita tampung ke dalam TMP hobis variabel yang baru jadi TMP hobis saat ini di baris kedua punya data yang sama seperti data hobis mengerti terus kita cetak si hobisnya yang mana Ini yang bakal muncul kelayar pertama kali lalu TMP hobis kita timpah nih lainnya yang mana yang ditimpa adalah urutan Arai urutan indeks Arai yang EE indeks keesatu yaitu berenang ini 0 ini sat Oke gua Takutnya salah nyebut nih bahaya nih ya sama dengan Bar artinya berenang diganti menjadi bar terus kita print TMP hobbiis yang ada di sini karena nilainya sudah ditimpah untuk urutan indeks 1 dengan nilai baru maka nge-print di paling bawah itu bakal ngikutin update-nya juga tetap gitu kita coba Run ya let's go py tes.py ini file-nya test jadi kita runningnya py spites.py enter bom hobis yang original itu main bola berenang ngoding sedangkan TMP hobis main bola biliar ngoding Oke ini untuk manipulasi data Aray fungsinya buat apa nanti di studi kasus bakal lu tahu materi yang gua kasih di awal ini bakal dipakai untuk apa enggak akan jauh-jauh dari sini kok Tenang aja dan again tadi sebelumnya gua bilang apa yang di dalam sikus ini lu bisa lakukan penjumlahan pengurangan kayak gitu-gitu contoh di sini 1 + 1 = 2 artinya nilai yang mana yang akan berubah kita clear dulu 0 1 2 maka nging akan berubah menjadi bar kita coba Ran main bola berenang main bola berenang ngoding biliar betul ngodingnya berubah menjadi Bar mau lu iseng juga boleh misalkan di sini 10 kurangin 10 ini kan artinya 0 ya ini ngapain Tapi By the way tapi ya Bisa Lu coba gitu yang nol itu berarti yang mana yang main bola main bola akan terganti oleh biliar kita coba nih Main bola jadi biliar sisanya tetap sama ya Jadi ini bebas mau ngapain mau perkalian pembagian Salu cuman ngapain aja disesuaikan dengan kebutuhan tapi ada sedikit tips yang paling kepakai bagi kita sebagai developer kalau mau nyari data terakhir itu caranya kayak gimana misalkan di sini ada 10 data 1000 data misalnya kayak ini gua copy dulu ya kayak gini misalnya nah e data terakhir nih kalau kita ee programmer pengin tahu data terakhir yang ada di sini itu apa nilainya saat ini nilainya stringnya adalah data terakhir ya cuman kalau pengin tahu data yang terakhir itu kita bisa akalin bukan dengan cara yang lu hitung dulu 1 2 3 4 5 6 7 8 Berarti ada 7 data karena 8 - 1 kalau indeks program kan berarti 7 lu masukin sini 7 ini adalah data terakhir data terakhir kita ganti jadi bar misalnya gitu ya itu bisa aja tapi terlalu manual bayangin kalau ada 1.7296 sekian-sekian data dan kita masa ngitung satu persatu gitu datanya kan enggak tahu ya Nah di dalam Aray itu kita bisa hitung jumlah data atau panjang datanya dengan cara seperti apa ini gua balikin dulu kayak gini lu bisa print pakai yang namanya kayak gini Line Line itu menghitung panjang dari sebuah data Len buka tutup apa yang mau dihitung adalah data hobis Jadi ini artinya untuk mencari tahu berapa jumlah panjang data yang ada di hobis kita coba print ya ini masukin aja ke dalam print kayak gini ini gua awasin dulu oke kita komentar dulu dan kita coba running clear BEM ada Del berarti Len ini adalah bahasa manusia karena kalau bahasa program dia mulai dari 0 sedangkan di sini munculnya 8 data Kita sebenarnya ada secara manusia dan 7 secara program indek Aray 0 1 2 3 4 5 6 6 7 jadi kalau kita sudah tahu len-nya 8 ya kita bisa nge-print yang terakhir dengan logika Seperti apa 8 - 1 benar 8nya kan udah otomatis dari sononya ketika kita pakai Line hobbies so kalau Line hobesnya kita minusin 1 ini adalah data terakhirnya dari Aray hobbies ini Setuju kita coba print cetak keluar keetujuh dan cara outputinnya kayak bagaimana ini kita jadiin variabel aja dulu Enggak usah diprint kayak gini ganti jadi variabel last data sama dengan gini l hobes Kurang 1 so untuk mengeluarkan nilai yang ada di dalam Aray salah satu nilainya ya keluar itu kan pakai siku-siku seperti ini Jadi lu Masukin dulu sini hobis buka tutup seperti ini masukin Angka berapa yang mau lu keluarin Kan gitu ya tapi pr-nya adalah kita pengin munculin yang terakhir tanpa harus kita ketik manual Angkanya berapa atau indeksnya indeks ke berapa karena di sini Kita sudah punya variabel yang nampung data terakhir angka indeks data terakhir di dalam array yang kita punya pusing lu bagus print hobbies dari last data kita coba harus data terakhir yang munculin ini teks ini Oke atau kita ganti jadi Dea gini aja deh data terakhirnya jadi yang keprint harusnya tulisan D ya kita cobaan d ya atau kalau pengin mau direct langsung tanpa variabel ini bisa aja lu masukin Line hobbies minus1-nya ke dalam siku-siku langsung seperti ini ini artinya hobi Line hobies dikurangi 1 Mencari data yang terakhir cobaran lagi pastikan tetap sama D alright kalau diminusin satu lagi berarti yang mana yang ngoding kecabaran nging kalau di minusin satu lagi berarti yang mana yang X ini cabaran x minusin satu lagi ngoding lagi ini misalkan gua ganti jadi H berarti harusnya yang ini kan coba kan bentar belum dis-save minusin sat S11 S11 haha harusnya nah udah H seperti itu agak sedikit aneh memang kalau kita mainin kayak beginian Jadi cukup sampai ke minus1 adalah data yang terakhir Oke kita coba bersihkan ini Dan kita mulai masuk ke program studi kasus kita di sesi kedua cukup lama pemanasannya ya setengah jam cukup kali ya mari kita mulai untuk studi kasus yang kedua ini back to file utama kita yang tes bisa dihapus aja ini delete aja langsung ya pencet Klik Kanan delete atau lu mau diamin juga enggak apa-apa buat latihan lu serah lu lah Oke ini gua awasin dulu sidebar-nya terminalnya gua awasin di sesi kedua ini kita bakal bikin Cui p-nya masuk ke dalam ee visual gambar yang kita punya yaitu lubang goanya Apakah itu mungkin mungkin saja dengan permainan Logika dan manipulasi data Oke pertama-tama kita harus pecah dulu ya Kita Harus Pisah dulu si visual gambarnya Keluar kita bisa bikin di sini ya ini kita bisa masukin ke dalam variabel taruh aja di sini nama variabelnya misalkan e gua jadi kita masukin sini Goa gua goa ya bukan gua goa Kita masukin seperti ini nah ini adalah bentuk Goa atau lu mau kasih taruh bentuk Goa seperti ini ggak apa-al pakai bahasa Indonesia ya bagusnya di Python kita bisa membentuk ini menjadi seperti ini tanpa harus bikin panjang-panjang ngetik seperti ini caranya kayak gimana ini kita hapus dulu ya Hapus dulu di sini lu bisa bikin Goa variabel baru sama dengan bentuk goa und goa dikali misalnya Sebanyak apa lu mau duplikat si gambar visual yang kita punya atau string yang kita punya misalkan sebanyak 4 artinya ini bakal ngcopy sebanyak 4 kali kayak gini menarik bukan kita cobain ya Kal 4 di pyon doang nih kayaknya di JS gak bisa kayak begitu kita print goanya untuk program yang ada di sini gua komentarin dulu dan kita coba jalanin yang ini B per kita ganti kalinya jadi 12 artinya si variabel gua ini bakalan ngebentuk string ini sebanyak 12 kali kita coba running lagi py main.py De ya 1 2 3 4 5 6 7 8 9 10 11 12 sebanyak 12 artinya Apa artinya kita bisa manipulasi Pak sekarang untuk saat ini ya kita bikin dulu variabel gua ini e sebanyak 4 kayak gini Oke tapi gua pengen gua ini empatnya adalah berbentuk Aray bukan string seperti ini karena apa Karena kalau string kayak gini ada EMP biji ini susah untuk dimanipulasi isinya kayak gini Gua gak bisa masukin sesuatu ke sini karena ke depannya gua pengen si chip ada di sini dengan kayak gini misalnya nah ini adalah si cuie ceritanya pengen masukin cuie ke sini kalau ininya string itu susah kalau ar kan tadi kita bisa masukin sesuatu nilai ke dalam arah yang sudah ada benar enggak jadi ini gua akan awasin kita back lagi ke semula Seperti ini cara membentuk Goa menjadi aray di Python cukup mudah tinggal lu bungkus aja ini dalam sebuah kotak bentuk goanya kayak gini dalam sebuah siku-siku artinya sama seperti ini nah sama kayak gini Pak yang tadinya nya seperti ini string di variabel gua mah bentuk gua itu dibuat siku-siku alias menjadi sebuah Aray kita coba print lagi goanya enggak akan kayak begini bentuknya sekarang Coba running ya perhatikan perbedaannya De nih sekarang jadi kayak 1 2 3 4 empatnya tetap sama empat biji data goanya tapi dia ada di dalam siku dan ada koma segala macam Artinya kita bisa apa Bisa masukin Goa untuk nomor yang ke berapa misalnya nomor dua dengan isian apa dengan isian data yang baru seperti ini ini gokil banget pokoknya kayak gini ketika kita print 0 1 2 3 yang keedua indeksnya akan menjadi gambar si cuuipai kita coba Ran BEM nama De ya perhatikan 012 jadi gambar mata Kayak gitu artinya cuipai ada di situ ceritanya ya dengan logika seperti ini gua yang posisi Cuai berada akan berbentuk gambar seperti ini mengerti maksud gua tinggal masukin aja posisi Cu pnya kan Ini udah jelas ya di random dari sononya dari 1 sampai ke 4 betul masukin aja ke sini Cu position kita print goanya dan print posisi Cui p-nya biar memastikan bahwa urutannya benar Cui P position pakai f dulu biar gampang posisi kasih seperti ini gimana nih sesi dua udah pada pusing ya kan Bang Bang tolong Bang jangan terlalu dalam seperti ini engak ini masih luaran biar kalian lebih tertantang lagi walaupun baru sesi du karena nanti sesi berikutnya bakal lebih seru Oke bertahanlah kawan jangan tereliminasi sekarang ya terlalu cepat kalau tereliminasi kita coba jalanin lagi programnya clear BEM D ya perhatikan posisi cuipai saat ini ada di dua oke dan 0 1 2 udah sesuai aman aman secara manusia enggak aman secara sistem secara manusia posisi du itu bukan di sini tapi di sini ingat tadi indeks arah itu mulai dari mana Ah gimana Lu kalau gak ingat dari nol berarti Apa yang harus kita lakukan untuk menurunkan nilai E posisi ini untuk menyamakan persepsi sudut pandang antara angka program dengan angka manusia yang biasa kita sebutin pelfalannya 0 1 2 dan 1 2 3 tadi Apa min1 betul sekali jadi kita bisa masukin di sini cuipai position 1 Oke That's good kita start save dulu Sorry maksud gua kita coba clear dan kita jalanin lagi BEM ya perhatikan posisi satu secara manusia di program ada di posisi satu juga jadi udah Satu Frekuensi nih antara kita dengan sistemnya n ya kalau kita Run lagi sekali Taruhlah dia ada di posisi satu lagi dih yang agak random dong cupai BEM Nah sekarang ada di posisi keempat dari mana 1 2 3 4 itu kan dari posisi cuipa yang di random lewat library import random mulai dari angka 1 sampai ke angka 4 artinya itu kan frekuensi manusia Enggak dari nol mulainya makanya di sini kita harus minusin jadi satu biar sefrekuensi seperti sistem jadi si cuipai posisinya akan berada di Visual yang sama seperti perintah manusia ketika manusia menentukan posisinya 4 maka gambarnya pun ada di urutan 4 secara manusia alright 1 2 3 4 kalau secara sistem 0 1 2 3 ha Gimana seru kan ini kita bisa lanjutin lagi berarti awas dulu nih print gua danp positionnya H sekarang kita bisa buka semua perintah programnya sret sampai sini Bem dan yang tadi kan ada di sini ya Halo nama user coba perhatikan gua di bawah ini mana Bang guanya kalau Sebelumnya kan kita seperti ini bikin empat biji manual gini ya sekarang kita enggak perlu bikin 4empat biji manual lagi karena bantuan variabel dan permainan Aray yang kita munculin ke sini yang mana teman-teman dari ee variabel yang sudah kita bikin di atas ini cuman tiga baris doang tadi Apakah yang bentuk Goa apakah yang Goa atau yang mana bentuk Goa Bang Oke kita coba bentuk Goa ini maksud lu bentuk gua yang ini ini kita coba jalanin programnya Mari bukan Bang bentar dulu coba dulu tadi udah bilang kayak gitu lu jadi kita cobain B De Afri coba perhatikan gua di bawah ini lah cuman satu tapi di sini tersedia 1 2 3 4 gimana coba bro gak bisa seperti itu gak boleh jadi yang mana yang harus kita keluarin yang Goa ini karena udah dibentuk menjadi empat goanya maka ini bukan bentuk Goa tapi Goa cobaran lagi ya yo ini kalau mau di-cancel ctrl c akan meng-cancel clear dulu py main.py nama gua defrizal dan Halo defrizal coba perhatikan gua di bawah ini 0 1 2 3 I kan 1 2 3 cuyp-nya kelihatan di posisi ke du menurut kamu gua berapa Cu brada ya udah jelas nomor dua kita coba enter menang atau enggak Des yakin dua yakin BEM selamat di menang Wah gimana dong Bang sekarang gawat selalu menang iya tuh udah ada algoritma yang kita bikin sendiri yes ini ini kan algoritma disebutnya ini pemikiran kita logika kita yang kita tuangkan ke dalam sebuah sintaks betul Menarik kan Coba clear sekali lagi ya kita menang atau kalah nih day a ada di satu Ya udah kita satu aja yakin yes menang lagi sekali lagi kita coba kalahin set da a ada di empat kita coba bikin dua BEM yakin ya kamu kalah Wah padahal udah ini pr-nya kayak gimana nih pr-nya adalah Gimana caranya ketika ini muncul pertama kali enggak munculin yang eh cuipnya ada di mana Jadi enggak boleh harus kosong dulu nanti cuipaynya bakal nongol setelah kita pilih jawaban Ayo loh gua sebat dulu silakan berpikir hihi dari materi yang sebelumnya kok ggak jauh-jauh Benar banget pintar temporary variable Mari kita bikin copyannya copyan dari mana Bang copyan dari goa yang ini Oke gua bisa bikin di sini temporary Goa atau kita bikin Goa kosong sama Goa kosong adalah copy dari goa ini kita bisa bikin seperti ini Goa Oke Tapi alangkah lebih indahnya kita bisa Bik ini pakai titik copy seperti ini buka tutup Oke ini baca ketika dibuka tutup muncul kayak begini di gua return a shallow copy of the Le shallow copy itu apa bang angnya Gua tahu Mari Sekarang kita coba perbedaan antara gua copy dengan gua yang tanpa sintx copy seperti ini ini shallow copy ini enggak shallow copy perbedaannya adalah gua bikin bukan Goa ya gua pisah dulu nih Kita coba bikin di file baru yang tadi atau file test tadi py sebagai sampelnya kayak gini ini bentuk gua tadi udah kita punya dan juga variabel Goa terus kita punya copyannya Goa eh Goa apa tadi ya gua lupa dah go Goa kosong ya Goa kosong Goa kosong sama dengan dari goa kayak gini dah kita print Goa dan print goa_0 keduanya akan sama cabaran sama tapi ketika gua kosong gua ubah nilainya isian dari gua gua kosong misalnya yang kedua gua ubah menjadi daa kayak gini maka gua kosong urutan kedua akan diisi oleh daa karena kita enggak pakai dot copy function yang shallow itu shallow copy maka ketika kita Run yang gua originalnya ini originalnya ya ini kan original gua kasih Komen dulu ini original Goa Oke terdistraksi terganggu nilainya karena kita copy referensi nilai Goa itu seutuhnya sama seperti Goa kosong artinya apapun perubahan di dalam Goa ini atau di dalam Goa kosong itu bakal berdampak antara keduanya gitu lu ngubah yang satunya lagi misalnya gua kosong data yang ke ini nih yang keenol misalnya kita ubah menjadi SD SD maka akan terdampak keduanya BEM keduanya tapi ketika kita pakai de do copy maka Goa kosong bakal menduplikat si Goa dan memutuskan hubungan antara keduanya ini original juga tapi bukan original yang Goa dia original Goa kosong Wah pusing ya ini baru sesi du Bang gimana dong bang Ampun bang tenang teman ini bakal terpakai untuk masa depan Ya percayalah jadi kalau kita running nih BEM perhatikan sekarang data terakhir ini adalah data yang pakai shallow copy Si Goa tidak terdampak goanya itu kan bentuk Goa dikali 4 yaitu yang kosong ini dikali 4 yaitu kosong sedangkan gua kosong sekarang diisi oleh e data baru itu Dea dan ASD jadi ada SD dan ada da tapi yang atas enggak terdampak Sedangkan yang lainnya Sebelum pakai copy itu terefect walaupun sebenarnya di sini penamaan variabel kita terbalik jadi kita balik lagi ke main file kita kita modifikasi sedikit artinya yang ini adalah Goa kosong Goa kosong Sorry dan yang ini adalah Goa copy kayak gini aja gua sesungguhnya begini Goa kosong.copy jadi yang bakal kita ubah adalah bukan variabel goaost Goa kosong biarlah kosong yang kita bakal ubah adalah copyannya yang udah kita pakaiin show copy y yaitu si variabel gua ini gua kasih komentar dulu ini tetap harus kosong ini adalah tempat baru untuk si chie gitu ya boleh dimodif yang ini tapi yang kosong itu biarlah kosong nah sebenarnya untuk kasus yang kita punya saat ini engak apa-apa kita ngeganti si Goa kosongnya juga enggak apa-apa tapi ini sekaligus aja gua kasih materi seputaran show cop ini karena penting nanti di dunia kerja pun banyak dipakai untuk shallow copy ini intinya sekarang yang kita ubah cuman variabel si Goa tanpa merubah Goa kosong so untuk di bagian yang ini kalau kita masih pakai Goa variabel yang Goa ini dia bakal tetap munculin Cui pay-nya di mana kita Ran BEM es kita coba Ran py main.py Dea dia bakal tetap munculin karena kita panggilnya adalah si Goa tempat bersembunyinya si chuipai Kalau mau yang e format kosong berarti kita Panggil yang Goa kosong goa kos Oke kita cbaran lagi ctrl c clear main.py day of R kosong Padahal di balik layar si chuipai udah berada di posisi Goa yang sesungguhnya yang ada di variabel Goa ini jadi setelah usernya menjawab kita bisa kasih di sini di bagian ini posisi si Cu pnya berada dengan cara kayak gini kita hapus dulu aja ini di bagian F ini biar lebih enak kasih posisi Goa si Koma Selamat kamu menang ini untuk posisi pilihan yang menang Oke karena pilihan kita ada di mana goanya Ada di mana Dan kalau yang kalah ini kita hapus dulu kasih juga Goa Maaf kamu kalah that's it kita coba Run ulangi lagi ctrl c clear run the R kosong dulu kita coba pencet nomor BEM yakin tiga jawabannya Yes BEM 1 2 3 EMP Maaf kamu kalah karena gua jawabannya tig sedangkan si chpai ada di sini di dua kita cobain lagi sampai berhasil e posisinya agak sedikit enggak enak jadi kita bisa kasih enter di sini nih pakai slash n kayak gini ini arti artinya enter oke Ini juga slash n bisa ini artinya enter coba running lagi the of ral tebak misalnya di dua enter yakin dua yakin enter Maaf kamu kalah karena dia ada di satu Oke kita coba lagi clear Masukkan nama kamu siapa Dea 4 y Entar ya guys Gua skip videonya biar gua menang dulu dah oke Setelah sekian lama Gua mencoba dengan beberapa percobaan akhirnya menang juga jadi ini udah di make sure ya bahwa apa yang sudah kita coding dengan algoritma tadi dengan logika-logika yang kita punya ini dan kalau kita kalah ya kayak yang barusan aja kita nebak-nebak sembarangan tig Yes kalah karena chpai ada di dua bukan di kayak gitu Bagaimana teman-teman Apakah sudah cukup puas untuk sesi kedua ini sudah cukup mumet atau belum Sintak yang seperti ini cukup mengerti Atau tidak Silakan kan di kolom komentar Kalau pusing kalau kekencangan kalau terlalu Wow kalau amaze ataupun kalau lu senang ternyata Python seramai ini ataupun kalian merasa kayak susah banget Bang teman-teman yang lain susah enggak ya lu tanya aja di kolom komentar kalian guys Apakah susah atau enggak guys kok gua pusing ya gitu Silakan dibaca di kolom komentar ada satu PR di sini Emm di mana ya kalau kita lihat ini bentukannya masih berupa Aray dan enggak bagus seperti ini ya Gimana caranya ini beembentukan si Aray ini hilang tanpa ada siku-siku tanpa ada kutip tanpa ada koma Jadi beneran kayak gua kayak list gua gitu yang kayak sebelumnya di video sesi satu Silakan cari tahu sendiri gua kasih tahu keyword-nya adalah join Aray silakan jangan lupa pantengin terus untuk sesi ketiga karena kita akan bermain lebih seru lagi Oke gua Def Rizal semoga bermanfaat jangan lupa komen keseruan kalian dalam belajar Python di playlist ini bye bye