Python Fundamental - regitapermata30/Modul-Algoritma-Pemrograman GitHub Wiki

Bahasa Pemrograman Python

2.1 Definisi Pemrograman

Pemograman didefinisikan sebagai proses yang lengkap, dimulai dari menulis kode pemograman, menguji sebuah kode program, hingga dapat memperbaiki debug yang muncul pada saat pemograman, serta memelihara kode pemograman yang telah dibagun melalui sebuah system update software. Tujuan utama dari pemograman yaitu untuk membuat sebuah program atau arahan dari user yang bisa dicerna oleh komputer, sehingga perangkat komputer dapat melakukan sebuah perhitungan serta menyelesaikan pekerjaan lain sesuai apa yang diinginkan oleh user. Biasanya untuk melakukan aktivitas pemograman atau coding ini, kita akan dituntut untuk mempunyai keterampilan yang kuat dan mendalam untuk menguasai bidang-bidang tertentu, seperti menguasai bahsa pemograman, algoritma, pengetahuan matematika seta logika. Hal itulah yang harus anda kuasai dan menyimbangkan pengetahuan tersebut dalam benak dan diri anda terlebih dahulu untuk mempelajari bahasa pemrograman komputer.

2.2 Bahasa Pemrograman Python

image

Python adalah bahasa pemrograman tingkat tinggi yang serbaguna dan mudah dipelajari. Itu diciptakan oleh Guido van Rossum dan pertama kali dirilis pada tahun 1991. Python dikenal dengan sintaksis yang bersih dan mudah dipahami, yang menjadikannya salah satu bahasa pemrograman yang populer dalam berbagai bidang, termasuk pengembangan perangkat lunak, pengembangan web, ilmu data, kecerdasan buatan, pemrograman jaringan, dan banyak lagi.

Berikut adalah beberapa ciri khas Python dan cara pemrograman Python:

  1. Sintaksis yang Mudah Dipahami: Python memiliki sintaksis yang sederhana dan mudah dibaca, yang membuatnya sangat cocok untuk pemula. Ini menggunakan spasinya untuk menandai blok kode, yang memungkinkan kode terlihat bersih dan terstruktur.

  2. Bahasa Tingkat Tinggi: Python adalah bahasa tingkat tinggi, yang berarti Anda tidak perlu khawatir tentang detail implementasi yang rumit seperti yang Anda temukan dalam bahasa tingkat rendah. Ini memungkinkan pengembang untuk lebih fokus pada pemecahan masalah daripada mengkhawatirkan detail teknis.

  3. Interpretatif: Python adalah bahasa pemrograman interpretatif, yang berarti Anda dapat menulis dan menjalankan kode tanpa harus mengompilasi terlebih dahulu. Ini membuat pengembangan lebih cepat karena Anda dapat melihat hasil langsung.

  4. Serbaguna: Python digunakan dalam berbagai aplikasi dan disiplin ilmu, termasuk pengembangan web dengan kerangka kerja seperti Django dan Flask, pengembangan perangkat lunak desktop, pengembangan permainan, analisis data, kecerdasan buatan, dan banyak lagi.

  5. Komunitas Besar: Python memiliki komunitas yang besar dan aktif yang mendukungnya. Anda dapat menemukan banyak sumber daya, modul, dan dokumentasi yang tersedia secara online.

  6. Modul dan Pustaka yang Kaya: Python memiliki berbagai modul dan pustaka yang memungkinkan Anda untuk melakukan berbagai tugas tanpa perlu menulis kode dari awal. Ini membantu mempercepat pengembangan.

  7. Lintas Platform: Python dapat dijalankan di berbagai sistem operasi, termasuk Windows, macOS, dan Linux. Ini membuatnya ideal untuk pengembangan lintas platform.

Untuk memprogram dalam Python, Anda perlu:

  • Menginstal Python di komputer Anda (versi terbaru dari situs resmi python.org).
  • Menggunakan lingkungan pengembangan (IDE) seperti PyCharm, Visual Studio Code, atau Jupyter Notebook untuk menulis dan menjalankan kode Python.
  • Memahami dasar-dasar bahasa, seperti variabel, tipe data, perulangan, percabangan, dan fungsi.
  • Mempelajari pustaka yang sesuai untuk proyek Anda jika diperlukan (misalnya, numpy untuk komputasi ilmiah atau Django untuk pengembangan web).
  • Menggunakan dokumentasi dan sumber daya online untuk memahami cara mengatasi masalah dan mengembangkan proyek Anda.

Python adalah bahasa yang sangat cocok untuk pemula dalam pemrograman dan sering digunakan oleh pengembang berpengalaman karena fleksibilitasnya yang tinggi dan ekosistem yang kaya.

Python adalah bahasa pemrograman yang memiliki sejumlah keunggulan, baik untuk pemula maupun pengembang berpengalaman. Berikut adalah beberapa keunggulan utama Python:

  1. Mudah Dipelajari dan Dipahami: Python memiliki sintaksis yang sederhana dan mudah dipahami, mirip dengan bahasa Inggris. Ini menjadikannya bahasa yang sangat ramah bagi pemula yang ingin memulai pemrograman.

  2. Serbaguna: Python dapat digunakan dalam berbagai aplikasi, termasuk pengembangan perangkat lunak, pengembangan web, analisis data, kecerdasan buatan, ilmu data, pemrograman jaringan, pengembangan game, dan banyak lagi.

  3. Lintas Platform: Python dapat dijalankan di berbagai sistem operasi, termasuk Windows, macOS, dan Linux, tanpa perubahan kode yang signifikan. Ini menjadikannya bahasa yang ideal untuk pengembangan lintas platform.

  4. Komunitas Besar: Python memiliki komunitas yang besar dan aktif, yang berarti Anda dapat dengan mudah menemukan dukungan, dokumentasi, dan sumber daya online. Ini juga berarti bahwa bahasa ini terus berkembang dengan adanya kontribusi dari berbagai pengembang.

  5. Modul dan Pustaka yang Kaya: Python dilengkapi dengan banyak modul dan pustaka bawaan yang memudahkan tugas-tugas umum, seperti manipulasi string, operasi matematika, dan pengolahan file. Selain itu, ada ribuan pustaka pihak ketiga yang dapat digunakan untuk berbagai keperluan.

  6. Pengembangan Cepat: Python adalah bahasa yang sangat produktif. Anda dapat mengembangkan aplikasi dengan cepat karena tidak perlu khawatir tentang detail teknis yang rumit. Ini juga mendukung pengembangan berorientasi objek.

  7. Dukungan Terhadap Paradigma Pemrograman: Python mendukung berbagai paradigma pemrograman, termasuk pemrograman berorientasi objek, pemrograman fungsional, dan pemrograman berbasis peristiwa.

  8. Mendukung Ekosistem Data yang Kuat: Python memiliki alat dan pustaka yang kuat untuk analisis data dan ilmu data, seperti NumPy, pandas, Matplotlib, dan scikit-learn. Ini menjadikannya bahasa yang populer di dunia ilmu data.

  9. Kebijakan Terbuka (Open Source): Python adalah perangkat lunak open source, yang berarti Anda dapat menggunakannya secara gratis dan mengubah kode sumbernya sesuai kebutuhan Anda.

  10. Mendukung Pembuatan Aplikasi Web: Python memiliki kerangka kerja web yang kuat seperti Django dan Flask, yang memudahkan pengembangan aplikasi web dengan cepat dan efisien.

Keunggulan-keunggulan ini menjadikan Python sebagai salah satu bahasa pemrograman yang populer dan pilihan yang baik untuk berbagai jenis proyek pengembangan perangkat lunak dan penelitian ilmu data.

1. Tipe data

Python adalah bahasa pemrograman yang memiliki beberapa tipe data dasar yang digunakan untuk menyimpan nilai atau informasi dalam kode. Berikut adalah beberapa tipe data dasar yang umum digunakan di Python:

  1. Integer (int): Tipe data ini digunakan untuk menyimpan bilangan bulat. Contohnya: 1, 42, -10.

  2. Float (float): Tipe data ini digunakan untuk menyimpan bilangan pecahan atau desimal. Contohnya: 3.14, 0.5, -2.0.

  3. String (str): Tipe data ini digunakan untuk menyimpan teks atau karakter. String dikelilingi oleh tanda kutip tunggal (') atau ganda ("). Contohnya: 'Hello, World!', "Python".

  4. Boolean (bool): Tipe data ini hanya memiliki dua nilai, yaitu True dan False. Ini digunakan untuk menggambarkan keadaan logika. Contohnya: True, False.

  5. List (list): Tipe data ini digunakan untuk menyimpan koleksi data yang bisa diubah (mutable) dan ditempatkan dalam tanda kurung siku []. List dapat berisi berbagai jenis tipe data, bahkan tipe data lainnya. Contohnya: [1, 2, 3, 'Python'].

  6. Tuple (tuple): Seperti list, tetapi bersifat tidak bisa diubah (immutable). Tuple ditempatkan dalam tanda kurung biasa (). Contohnya: (1, 2, 3, 'Python').

  7. Set (set): Tipe data ini digunakan untuk menyimpan koleksi data yang unik dan tidak berurutan. Set ditempatkan dalam tanda kurung kurawal {}. Contohnya: {1, 2, 3}.

  8. Dictionary (dict): Tipe data ini digunakan untuk menyimpan data dalam bentuk pasangan kunci-nilai yang berpasangan. Dictionary ditempatkan dalam tanda kurung kurawal {} dan memiliki format {kunci: nilai}. Contohnya: {'nama': 'John', 'usia': 30}.

  9. NoneType (None): Ini adalah tipe data yang digunakan untuk menggambarkan ketiadaan atau ketiadaan nilai. Dalam Python, None adalah satu-satunya anggota dari tipe data NoneType. Contohnya: None.

  10. Bytes dan Bytearrays: Digunakan untuk mengelola data biner atau data berbasis byte. Bytes bersifat immutable, sedangkan bytearrays bersifat mutable.

  11. Tipe Data Khusus (e.g., complex, decimal): Python juga memiliki tipe data khusus seperti tipe data kompleks (complex) untuk menyimpan angka kompleks, dan tipe data desimal (decimal) untuk kalkulasi presisi tinggi.

2. Variabel

Variabel adalah suatu pengenal (identifier) yang digunakan untuk mewakili suatu nilai tertentu di dalam proses program. Berbeda dengan konstanta yang nilainya selalu tetap, nilai dari suatu variable bisa diubah-ubah sesuai kebutuhan. Variabel secara umumnya dapat menyimpan berbagai macam tipe data. di dalam Python, variabel bersifat dinamis, yang artinya python tidak perlu dideklarasikan tipe data tertentu dan variabel python dapat diuaah saat program dijalankan.

Nama dari suatu variabel dapat ditentukan sendiri oleh pemrogram dengan aturan sebagai berikut:

  1. Terdiri dari gabungan huruf dan angka dengan karakter pertama harus berupa huruf. Bahasa python bersifat case-sensitive artinya huruf besar dan kecil dianggap berbeda. Jadi antara nama,Nama dan NaMa dianggap berbeda.
  2. Karakter pertama harus berupa huruf atau garis bawah atau underscore _ karakter selanjutnya dapat berupa huruf, garis bawah atau angka dalam penulisan variabel pada python, cukup menuliskan variabel lalu mengisikannya dengan nilai ditambahkan dengan tanda sama dengan = diikuti dengan nilai untuk variabel tersebut.
#memasukkan data dalam sebuah variabel
name = "Budi Bae" #isi variabel berupa string
print(name) #mencetak variabel

#nilai dan tipe data dalam variabel
age = 21 #tipe data angka / numeric
print(age) #mencetak nilai age
print(type(age)) #melihat tipe data dari age
age = "dua puluh satu" #tipe data string
print(age) #mencetak string dari age
print(type(age)) #melihat tipe data

first_name = "Monkey"
middle_name = "D."
last_name = "Luffy"
name = first_name+" "+middle_name+" "+last_name
age = 19
hobby = "Makan"
print("Profil\n",name,"\n",age,"\n",hobby)

#contoh variabel lainnya
age = 1
Age = 2
aGe = 3
AGE = 4
a_g_e = 5
_age = 6
age_ = 7
_AGE_ = 8
print(age, Age, aGe, AGE, a_g_e, _age, age_, _AGE_) #mencetak variabel

numberofcollegegraduates = 2500
NUMBEROFCOLLEGEGRADUATES = 2500
numberOfCollegeGraduates = 2500
NumberOfCollegeGraduates = 2500
number_of_college_graduates = 2500
#mencetak variabel
print(numberofcollegegraduates, NUMBEROFCOLLEGEGRADUATES,numberOfCollegeGraduates, NumberOfCollegeGraduates, number_of_college_graduates)

3. Operator

Operator adalah symbol yang biasa dilibatkan dalam program untuk melakukan sesuatu operasi atau manipulasi, sebagai contoh yang dapat diimplementasikan menggunakan operator, 5 + 10 = 15, Dimana 5 dan 10 adalah operan dan + adalah operator. Bahasa pemrograman Python mendukung berbagai macam operator, diantaranya

Operator

Operator adalah symbol yang biasa dilibatkan dalam program untuk melakukan sesuatu operasi atau manipulasi, sebagai contoh yang dapat diimplementasikan menggunakan operator, 5 + 10 = 15, Dimana 5 dan 10 adalah operan dan + adalah operator.

Bahasa pemrograman Python mendukung berbagai macam operator, diantaranya :

Operator Aritmatika

Operator Contoh Penjelasan
Penjumlahan + 1 + 3 = 4 Menjumlahkan nilai dari masing-masing operan atau bilangan
Pengurangan - 4 - 1 = 3 Mengurangi nilai operan di sebelah kiri menggunakan operan di sebelah kanan
Perkalian * 2 * 4 = 8 Mengalikan operan/bilangan
Pembagian / 10 / 5 = 2 Untuk membagi operan di sebelah kiri menggunakan operan di sebelah kanan
Sisa Bagi % 11 % 2 = 1 Mendapatkan sisa pembagian dari operan di sebelah kiri operator ketika dibagi oleh operan di sebelah kanan
Pangkat ** 8 ** 2 = 64 Memangkatkan operan disebelah kiri operator dengan operan di sebelah kanan operator
Pembagian Bulat // 10 // 3 = 3 Sama seperti pembagian. Hanya saja angka dibelakang koma dihilangkan

Operator Perbandingan

Operator perbandingan (comparison operators) digunakan untuk membandingkan suatu nilai dari masing-masing operan.

Operator Contoh Penjelasan
Sama dengan == 1 == 1 bernilai True Jika masing-masing operan memiliki nilai yang sama, maka kondisi bernilai benar atau True.
Tidak sama dengan != 2 != 2 bernilai False Akan menghasilkan nilai kebalikan dari kondisi sebenarnya.
Tidak sama dengan <> 2 <> 2 bernilai False Akan menghasilkan nilai kebalikan dari kondisi sebenarnya.
Lebih besar dari > 5 > 3 bernilai True Jika nilai operan kiri lebih besar dari nilai operan kanan, maka kondisi menjadi benar.
Lebih kecil dari < 5 < 3 bernilai True Jika nilai operan kiri lebih kecil dari nilai operan kanan, maka kondisi menjadi benar.
Lebih besar atau sama dengan >= 5 >= 3 bernilai True Jika nilai operan kiri lebih besar dari nilai operan kanan, atau sama, maka kondisi menjadi benar.
Lebih kecil atau sama dengan <= 5 <= 3 bernilai True Jika nilai operan kiri lebih kecil dari nilai operan kanan, atau sama, maka kondisi menjadi benar.

Operator Penugasan

Operator penugasan digunakan untuk memberikan atau memodifikasi nilai ke dalam sebuah variabel.

Operator Contoh Penjelasan
Sama dengan = a = 1 Memberikan nilai di kanan ke dalam variabel yang berada di sebelah kiri.
Tambah sama dengan += a += 2 Memberikan nilai variabel dengan nilai variabel itu sendiri ditambah dengan nilai di sebelah kanan.
Kurang sama dengan -= a -= 2 Memberikan nilai variabel dengan nilai variabel itu sendiri dikurangi dengan nilai di sebelah kanan.
Kali sama dengan *= a *= 2 Memberikan nilai variabel dengan nilai variabel itu sendiri dikali dengan nilai di sebelah kanan.
Bagi sama dengan /= a /= 4 Memberikan nilai variabel dengan nilai variabel itu sendiri dibagi dengan nilai di sebelah kanan.
Sisa bagi sama dengan %= a %= 3 Memberikan nilai variabel dengan nilai variabel itu sendiri dibagi dengan nilai di sebelah kanan. Yang diambil nantinya adalah sisa baginya.
Pangkat sama dengan **= a **= 3 Memberikan nilai variabel dengan nilai variabel itu sendiri dipangkatkan dengan nilai di sebelah kanan.
Pembagian bulat sama dengan //= a //= 3 Membagi bulat operan sebelah kiri operator dengan operan sebelah kanan operator kemudian hasilnya diisikan ke operan sebelah kiri.

Operator Logika

Berikut adalah penjelasan mengenai operator logika (Logical Operator)

Operator Contoh Penjelasan
and a, b = True, True
# hasil akan True
print(a and b)
Memberikan nilai di kanan ke dalam variabel yang berada di sebelah kiri.
or a, b = True, False
# hasil akan True
print(a or b)
print(b or a)
print(a or a)
# hasil akan False
print(b or b)
Jika salah satu atau kedua operan bernilai True maka kondisi akan bernilai True. Jika keduanya False maka kondisi akan bernilai False.
not a, b = True, False
# hasil akan True
print(not b)
Membalikkan nilai kebeneran pada operan misal jika asalnya True akan menjadi False dan begitupun sebaliknya.

Operator Bitwise (Bitwise Operators)

Berikut adalah penjelasan mengenai Operator Bitwise (Bitwise Operators)

Operator Contoh Penjelasan
& a, b = 13, 37
# a akan bernilai '0000 1101'
# b akan bernilai '0010 0101'
c = a & b
# c akan bernilai 5 = '0000 0101'
print(c)
Operator biner AND, memeriksa apakah operan di sebelah kiri dan operan sebelah kanan mempunyai angka biner 1 di setiap bit. Jika keduanya bernilai 1 maka bit hasil operasi akan bernilai 1.
| a, b = 13, 37
# a akan bernilai '0000 1101'
# b akan bernilai '0010 0101'
c = a | b
# c akan bernilai 45 = '0010 1101'
print(c)
Operator biner OR, memeriksa apakah operan di sebelah kiri dan operan sebelah kanan mempunyai angka biner 1 di setiap bit. Jika salah satunya bernilai 1 maka bit hasil operasi akan bernilai 1.
^ a, b = 13, 37
# a akan bernilai '0000 1101'
# b akan bernilai '0010 0101'
c = a ^ b
# c akan bernilai 40 = '0010 1000'
print(c)
Operator biner Negative, membalik nilai bit. Misal dari 1 menjadi 0, dari 0 menjadi 1.
Kali sama dengan *= a *= 2 Operator biner OR, memeriksa apakah operan di sebelah kiri dan operan sebelah kanan mempunyai angka biner 1 di setiap bit. Jika salah .
~ a, b = 13, 37
# a akan bernilai '0000 1101'
# b akan bernilai '0010 0101'
Memberikan nilai variabel dengan nilai variabel itu sendiri dibagi dengan nilai di sebelah kanan.
<< a, b = 13, 37
# a akan bernilai '0000 1101'
# b akan bernilai '0010 0101'
# hasil bernilai 52 = ''0011 0100'
print(a << 2)
# hasil bernilai 148 = '1001 0100'
print(b << 2)
Memberikan nilai variabel dengan nilai variabel itu sendiri dibagi dengan nilai di sebelah kanan. Yang diambil nantinya adalah sisa baginya .
>> a, b = 13, 37
# a akan bernilai '0000 1101'
# b akan bernilai '0010 0101'
# hasil bernilai 3 = '0000 0011'
print(a >> 2)
# hasil bernilai 9 = '0000 1001'
print(b >> 2)
Operator penggeser biner ke kiri, deret bit akan digeser ke kiri sebanyak n kali.

Contoh penjelasan :

Bitwise AND operator

a = 10 = 1010 (Binary)
b = 4 =  0100 (Binary

a & b = 1010
         &
        0100
      = 0000
      = 0 (Decimal)

Bitwise or operator

a = 10 = 1010 (Binary)
b = 4 =  0100 (Binary

a | b = 1010
         |
        0100
      = 1110
      = 14 (Decimal)

Bitwise not operator

a = 10 = 1010 (Binary)

~a = ~1010
   = -(1010 + 1)
   = -(1011)
   = -11 (Decimal)

Bitwise xor operator

a = 10 = 1010 (Binary)
b = 4 =  0100 (Binary

a ^ b = 1010
         ^
        0100
      = 1110
      = 14 (Decimal)

Operator Keanggotaan (Membership Operators)

Berikut adalah penjelasan mengenai operator logika (Logical Operator)

Operator Contoh Penjelasan
in sebuah_list = [1, 2, 3,4 ,5]
print(5 in sebuah_list)
Memeriksa apakah nilai yang dicari berada pada list atau struktur data python lainnya. Jika nilai tersebut ada maka kondisi akan bernilai True.
not in sebuah_list = [1, 2, 3,4 ,5]
print(10 not in sebuah_list)
Memeriksa apakah nilai yang dicari tidak ada pada list atau struktur data python lainnya. Jika nilai tersebut tidak ada maka kondisi akan bernilai True.

Operator Identitas (Identity Operators)

Berikut adalah penjelasan mengenai Operator Identitas (Identity Operators)

Operator Contoh Penjelasan
is a, b = 10, 10
# hasil akan True
print(a is b)
Memeriksa apakah nilai di sebelah kiri operan memiliki identitas memori yang sama dengan nilai di sebelah kanan operan. Jika sama maka kondisi bernilai True.
is not a, b = 10, 5
# hasil akan True
print(a is not b)
Memeriksa apakah nilai di sebelah kiri operan memiliki identitas memori yang berbeda dengan nilai di sebelah kanan operan. Jika berbeda maka kondisi bernilai True.

Prioritas Eksekusi Operator di Python

Dari semua operator diatas, masing-masing mempunyai urutan prioritas yang nantinya prioritas pertama akan dilakukan paling pertama, begitu seterusnya sampai dengan prioritas terakhir.

Operator Keterangan
** Aritmatika
~, +, - Bitwise
*, /, %, // Aritmatika
+, - Aritmatika
>>, << Bitwise
& Bitwise
^,| Bitwise
<=, <, >, >= Perbandingan
<> , ==, != Perbandingan
=, %=, /=, //=, -=, +=, *=, **= Penugasan
is, is not Identitas
in, not in Membership (Keanggotaan)
not, or, and Logika
⚠️ **GitHub.com Fallback** ⚠️