My Python Project
Saya sedang belajar python basic dalam rangkaian pelatihan Data Science Training di Mutiara technology Indonesia .
#MutiaraTechnologyIndonesia
#SemuaPastiBisa_MulaiAjaDulu
A. Materi hari pertama yaitu tentang fundamental python, tipe data, variabel dan operator.
Tugas Hari Pertama:
a. Pengertian dan Sejarah Python
Pengertian Python
Python adalah salah satu bahasa pemrograman yang dapat melakukan eksekusi sejumlah instruksi multi guna secara langsung (interpretatif) dengan metode orientasi objek (Object Oriented Programming) serta menggunakan semantik dinamis untuk memberikan tingkat keterbacaan syntax. Sebagian lain mengartikan Python sebagai bahasa yang kemampuan, menggabungkan kapabilitas, dan sintaksis kode yang sangat jelas, dan juga dilengkapi dengan fungsionalitas pustaka standar yang besar serta komprehensif. Walaupun Python tergolong bahasa pemrograman dengan level tinggi, nyatanya Python dirancang sedemikian rupa agar mudah dipelajari dan dipahami.
Sejarah Python
Python dibuat dan dikembangkan oleh Guido Van Rossum, yaitu seorang programmer yang berasal dari Belanda. Pembuatannya berlangsung di kota Amsterdam, Belanda pada tahun 1990. Pada tahun 1995 Python dikembangkan lagi agar lebih kompatibel oleh Guido Van Rossum. Selanjutnya pada awal tahun 2000, terdapat pembaharuan versi Python hingga mencapai Versi 3 sampai saat ini. Pemilihan nama Python sendiri diambil dari sebuah acara televisi yang lumayan terkenal yang bernama Mothy Python Flying Circus yang merupakan acara sirkus favorit dari Guido van Rossum.
b. Keunggulan Python
- Mudah dipelajari
banding bahasa pemrograman lain, Phyton relatif lebih mudah dipelajari. Bahasa ini memiliki sintaks-sintaks yang cukup sederhana dan gampang dimengerti. Bahasa ini sangat dinamis dan dibangun berdasarkan tingkat keterbacaan kode yang tinggi. - Mudah diaplikasikan
Kelebihan lainnya dari bahasa pemrograman Python adalah kemudahannya dalam diaplikasikan dalam mengembangkan sebuah produk, baik itu situs, software, aplikasi situs, maupun video game
Selain memiliki keterbacaan kode yang tinggi, sehingga kode mudah dipahami, bahasa pemrograman ini memiliki library yang sangat banyak dan luas. Berbagai macam jenis library ini memuat beragam perlengkapan dan fungsionalitas, sehingga kemudahan membangun program menjadi salah satu yang ditawarkan oleh Phyton. - Dukung IoT
Bahasa pemrograman Python mendukung ekosistem Internet of Things (IoT) dengan sangat baik. IoT sedang marak dibicarakan atau bahkan dikembangkan di kalangan maker. Internet of Things merupakan sebuah teknologi yang menghubungkan benda-benda di sekitar kita ke dalam sebuah jaring-jaring yang saling terhubung.
Bahasa ini menjadi sangat populer, lantaran banyak sistem dengan Internet of Things yang menggunakan bahasa ini. Terdapat berbagai macam board yang digunakan menjalankan sistem IoT menggunakan bahasa pemrograman ini sebagai basisnya, termasuk Raspberry Pi. - Fleksibel
Program yang ditulis menggunakan Python dapat dijalankan di hampir semua sistem operasi (Unix, Windows, Mac OS X, dll.), termasuk untuk perangkat-perangkat selular.
c. Kalkulator Sederhana
import math
class kalkulator:
def tambah(a, b):
return a + b
def kurang(a, b):
return a - b
def kali(a, b):
return a * b
def bagi(a, b):
return a/b
def kuadrat(a):
return a**2
def akar(a):
return math.sqrt(a)
kalkulator()
print("MENU KALKULATOR\n")
print("1. tambah")
print("2. kurang")
print("3. kali")
print("4. bagi")
print("5. kuadrat")
print("6. akar")
x = int(input("\nPilihan anda? = "))
if x in (1, 2, 3, 4):
a = int(input("Masukkan angka pertama = "))
b = int(input("Masukkan angka kedua = "))
if x == 1:
print(a, "+", b, "=", tambah(a, b))
elif x == 2:
print(a, "-", b, "=", kurang(a, b))
elif x == 3:
print(a, "x", b, "=", kali(a, b))
elif x == 4:
print(a, "/", b, "=", bagi(a,b))
elif x in (5, 6):
a = int(input("Masukkan angka = "))
if x == 5:
print("kuadrat dari", a, "=", kuadrat(a))
elif x == 6:
if a < 0:
print(a, "tidak ada akarnya")
else:
print("akar dari", a, "=", akar(a))
else:
print("Input pilihan yang benar")
B. Materi hari kedua yaitu tentang list, tuple, set dan dictionary.
Tugas:
Tugas Hari kedua yaitu menyampaikan kepada teman-teman kita bahwa ada tempat untuk belajar data science.
C. Materi hari ketiga yaitu tentang logic control flow yang berisi percabangan, dan loop/perulangan.
Tugas:
Soal 1
Program mencetak “semangka” ke bawah.
buah = ["s", "e", "m", "a", "n", "g", "k", "a"]
for i in buah:
print(i)
Soal 2
Membuat program 100 angka pertama dengan syarat :
- setiap ingin menampilkan kelipatan 5 ubah menjadi lima
- setiap kelipatan 7 ubah menjadi tujuh’
- jika bertemu 35 dan 70 ubah menjadi tiga lima dan tujuh puluh
- dan jika bertemu 100 ubah menjadi end
x = 0
for i in range(1,101):
x += 1
if x == 35 or x == 70:
print("Tiga lima dan tujuh puluh!")
elif x%5 == 0:
print("Lima")
elif x%7 == 0:
print("Tujuh")
else:
print(i)
Soal 3
Membuat program penyusun data dalam sebuah list.
# name list
name_list = ["Bernice", "Aaron", "Cody"]
# lengkapi kode
print("Here is the list in alphabetical order :")
for i in sorted(name_list):
print(i)
print()
print("Here is the list in reversed alphabetical order :")
for i in reversed(sorted(name_list)):
print(i)
print()
print("Here is the list in its original order :")
for i in name_list:
print(i)
Soal 4
Membuat program Kuota SKS, yaitu program yang dapat menentukan kuota SKS yang diperoleh berdasarkan nilai IPK. Jika IPK besar dari 3.00 kuota SKS 24, jika IPK 2.50 sampai 2.99 kuota SKS 21, jika IPK 2.00 sampai 2.49 kuota SKS 18, jika IPK di bawah 2.00 kuota SKS 15.
print("Cek Kuota SKS\n")
x = float(input("Masukkan nilai IPK = "))
if x < 2.00:
print("\nKuota SKS adalah 15 SKS")
elif 2.00 <= x < 2.50:
print("\nKuota SKS adalah 18 SKS")
elif 2.49 < x < 3.00:
print("\nKuota SKS adalah 21 SKS")
elif x >= 3.00:
print("\nKuota SKS adalah 24 SKS")
else:
print("\nInput angka yang benar!")
Soal 5
Membuat program mengubah value pada key ‘barand’ menjadi ‘honda’.
thisdict = {
'barand' : 'ford',
'model' : 'mustang',
'year' : 1964
}
print(thisdict)
thisdict['barand'] = "honda"
print(thisdict)
D. Materi hari ke empat, yaitu tentang function dan method pada python.
Soal 1
Membuat program untuk menentukan bilangan genap dan bilangan ganjil berdasarkan input user.
def konversibilangan(x):
if x % 2 == 0:
return print(x, "adalah bilangan genap")
else:
return print(x, "adalah bilangan ganjil")
while True:
try:
x = int(input("Masukkan angka = "))
break
except ValueError:
print("\nMasukkan hanya angka!")
continue
konversibilangan(x)
Soal 2
Membuat program untuk mengkonversi angka yang diinput user sebagai bulan dalam kalender masehi.
def konversibulan(x):
bulan = ["Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"]
output = bulan[x-1]
return print("Bulan ke-"+str(x), "adalah", output)
while True:
try:
x = int(input("\nMasukkan angka yang akan dikonversi menjadi bulan Masehi = "))
break
except ValueError:
print()
continue
konversibulan(x)
Soal 3
Membuat program untuk menukar angka-angka yang diinput oleh user.
def putar(a, b, c):
yotta = c
c = b
b = a
a = yotta
return print("A =", a, "\nB =", b, "\nC =", c)
while True:
try:
a = int(input("\nMasukkan nilai A yang akan ditukar (dalam bentuk angka) = "))
b = int(input("Masukkan nilai B yang akan ditukar (dalam bentuk angka) = "))
c = int(input("Masukkan nilai C yang akan ditukar (dalam bentuk angka) = "))
break
except ValueError:
print("Masukkan hanya angka!")
print("\nSebelum di tukar :\n")
print("A =", a, "\nB =", b, "\nC =", c)
print("\nSetelah ditukar :\n")
putar(a, b, c)
E. Materi hari ke lima yaitu tentang input/output, modul, exception, object dan class pada python.
Pada tugas yang diberikan kali ini, saya tidak membuat program, melainkan melengkapi program agar program dapat berjalan dan memberikan input sesuai dengan yang diinginkan. Tujuannya adalah agar saya dapat memantapkan pemahaman mengenai materi yang diajarkan selama 1 minggu ini.
Soal 1
stack = []
def push(val):
stack.append(val)
def pop():
val = stack[-1]
stack.pop()
return val
push(6)
push(1)
push(7)
print("Hasil diharapkan :")
print(pop())
print(pop())
print(pop())
Soal 2
print("Hasil Diharapkan")
class Stack:
def __init__(self):
self.__stackList = []
def push(self, val):
self.__stackList.append(val)
def pop(self):
val = self.__stackList[-1]
del self.__stackList[-1]
return val
class AddingStack(Stack):
def __init__(self):
Stack.__init__(self)
self.__sum = 0
def getSum(self):
return self.__sum
def push(self, val):
self.__sum += val
Stack.push(self, val)
def pop(self):
val = Stack.pop(self)
self.__sum -= val
return val
stackObject = AddingStack()
for i in range(10):
stackObject.push(i)
print(stackObject.getSum())
for i in range(10):
print(stackObject.pop())
Soal 3
print("Hasil diharapkan")
class KelasKita:
pass
obj = KelasKita()
obj.awal = 6
obj.baru = 8
obj.ikut = 0
obj.ireal = 3.5
obj.integer = 4
obj.z = 5
def AyoSemangat(obj):
for name in obj.__dict__.keys():
if name.startswith('i'):
val = getattr(obj, name)
if isinstance(val, int):
setattr(obj, name, val + 1)
print(obj.__dict__)
AyoSemangat(obj)
print(obj.__dict__)
Soal 4
print("Hasil diharapkan")
class Putra:
pass
class Indonesia(Putra):
pass
class Negara(Indonesia):
pass
for isi1 in [Putra, Indonesia, Negara]:
for isi2 in [Putra, Indonesia, Negara]:
print(issubclass(isi1, isi2), end="\t")
print()
Soal 5
print("Hasil diharapkan")
class Tingkat1:
vario1 = 555
def __init__(self):
self.nilai1 = 155
def Happy1(self):
return 552
class Tingkat2(Tingkat1):
vario2 = 222
def __init__(self):
super().__init__()
self.nilai2 = 2221
def Happy2(self):
return 2222
class Tingkat3(Tingkat2):
vario3 = 333
def __init__(self):
super().__init__()
self.nilai3 = 3331
def Happy3(self):
return 3332
obj = Tingkat3()
print(obj.vario1, obj.nilai1, obj.Happy1())
print(obj.vario2, obj.nilai2, obj.Happy2())
print(obj.vario3, obj.nilai3, obj.Happy3())
Soal 6
print("Hasil diharapkan")
class Fib:
def __init__(self, nn):
self.__n = nn
self.__i = 0
self.__p1 = self.__p2 = 1
def __iter__(self):
print("Fib iter")
return self
def __next__(self):
self.__i += 1
if self.__i > self.__n:
raise StopIteration
if self.__i in [1, 2]:
return 1
ret = self.__p1 + self.__p2
self.__p1, self.__p2 = self.__p2, ret
return ret
class Class:
def __init__(self, n):
self.__iter = Fib(n)
def __iter__(self):
print("Class iter")
return self.__iter;
object = Class(11)
for i in object:
print(i)
Sekian dan terima kasih.