MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
BELAJARPY
1. Mudah Belajar Pemrograman
dengan Python (Part 2)
Divisi Riset POSS – UPI
Sabtu, 31 Agustus 2013 – Minggu, 1 September 2013
Lab Praktikum Ilmu Komputer. Gedung FPMIPA – C
Universitas Pendidikan Indonesia
3. Exception : tipe - tipe
Exception, StandardError, ArithmeticError, LookupError, AssertionError,
AttributeError,EOFError, EnvironmentError,FloatingPointError, GeneratorExit,
IOError, ImportError, IndexError, KeyError, KeyboardInterrupt, MemoryError,
NameError, NotImplementedError, OsError, OverflowError, ReferenceError,
StopIteration, SyntaxError, SystemError, TypeError, UnboundLocalError,
ValueError, WindowsError, ZeroDivisionError
Kode sumber exception1.py
4. Exception : pembagian nol
sebuah_angka = 29
try:
print sebuah_angka / 0
except:
print "proses perhitungan gagal "
print "proses cetak ini masih bisa dijalankan "
try:
print sebuah_angka / 0
except ZeroDivisionError, e:
print "proses perhitungan gagal karena : ", e
print "proses cetak ini masih bisa dijalankan "
print sebuah_angka / 0
# jika tidak memakai exception maka proses berikutnya tidak akan dijalankan
print "apakah proses cetak ini masih bisa dijalankan ??? "
Kode sumber exception1.py
5. Exception : pembagian nol
sebuah_angka = 29
try:
print sebuah_angka / 0
except:
print "proses perhitungan gagal "
print "proses cetak ini masih bisa dijalankan "
try:
print sebuah_angka / 0
except ZeroDivisionError, e:
print "proses perhitungan gagal karena : ", e
print "proses cetak ini masih bisa dijalankan "
print sebuah_angka / 0
# jika tidak memakai exception maka proses berikutnya tidak akan dijalankan
print "apakah proses cetak ini masih bisa dijalankan ??? "
Kode sumber exception1.py
6. Exception : index error
sebuah_list = [1, 2, 3, 4, 5]
sebuah_tuple = (1, 2, 3, 4, 5)
sebuah_dictionary = {'nama':'Mangaraja', 'email':'mangaraja@yahoo.com'}
try:
print sebuah_list[10]
except IndexError, e:
print "proses gagal karena : ", e
print "proses cetak ini masih bisa dijalankan "
try:
print sebuah_tuple[10]
except IndexError, e:
print "proses gagal karena : ", e
print "proses cetak ini masih bisa dijalankan "
try:
print sebuah_dictionary['website']
except KeyError, e:
print "proses gagal karena : ", e
print "proses cetak ini masih bisa dijalankan "
Kode sumber exception2.py
7. Exception : index error
sebuah_list = [1, 2, 3, 4, 5]
sebuah_tuple = (1, 2, 3, 4, 5)
sebuah_dictionary = {'nama':'Mangaraja', 'email':'mangaraja@yahoo.com'}
try:
print sebuah_list[10]
except IndexError, e:
print "proses gagal karena : ", e
print "proses cetak ini masih bisa dijalankan "
try:
print sebuah_tuple[10]
except IndexError, e:
print "proses gagal karena : ", e
print "proses cetak ini masih bisa dijalankan "
try:
print sebuah_dictionary['website']
except KeyError, e:
print "proses gagal karena : ", e
print "proses cetak ini masih bisa dijalankan "
Kode sumber exception2.py
8. Exception : io error
try :
f = open('nilai.txt')
except IOError, e:
print "Proses pembukaan file gagal karena : ", e
print "proses cetak pada baris ini masih bisa dijalankan"
Kode sumber exception3.py
9. Exception : buatan programmer
class NegativeValueError(Exception):
def __init__(self, value):
self.value = value
def __str__(self):
s = "Tidak menerima angka kurang dari 0 " + str(self.value)
return s
def cekAngka(angka):
if angka < 0:
raise NegativeValueError(angka)
try:
sebuah_angka = int(raw_input("masukkan sebuah angka : "))
cekAngka(sebuah_angka)
except (NegativeValueError, TypeError), e:
print "proses gagal karena : ", e
Kode sumber exception4.py
10. Exception : multiple except
try:
angka1 = int(raw_input('masukkan angka ke-1 : '))
angka2 = int(raw_input('masukkan angka ke-2 : '))
print 'hasil perhitungan : ', angka1 / angka2
except ZeroDivisionError, e:
print "proses perhitungan gagal karena : ", e
except ValueError, e:
print "proses perhitungan gagal karena : ", e
print "proses cetak ini masih bisa dijalankan "
Kode sumber exception5.py
11. Exception : multiple exception
try:
angka1 = float(raw_input('masukkan angka ke-1 : '))
angka2 = float(raw_input('masukkan angka ke-2 : '))
print 'hasil perhitungan : ', angka1 / angka2
except (ZeroDivisionError, ValueError, TypeError), e:
print "proses perhitungan gagal karena : ", e
print "proses cetak ini masih bisa dijalankan "
Kode sumber exception6.py
12. Exception : nested try
try:
angka1 = float(raw_input('masukkan angka ke-1 : '))
angka2 = float(raw_input('masukkan angka ke-2 : '))
try :
print 'hasil perhitungan : ', angka1 / angka2
except ZeroDivisionError, e:
print "proses perhitungan gagal karena : ", e
except ValueError, e:
print "proses input gagal karena : ", e
print "proses cetak ini masih bisa dijalankan "
Kode sumber exception7.py
13. Exception : finally
try:
angka1 = float(raw_input('masukkan angka ke-1 : '))
angka2 = float(raw_input('masukkan angka ke-2 : '))
try :
print 'hasil perhitungan : ', angka1 / angka2
except ZeroDivisionError, e:
print "proses perhitungan gagal karena : ", e
except ValueError, e:
print "proses input gagal karena : ", e
finally:
print "coba perhatikan lagi nilai yang anda masukkan "
print "proses cetak ini masih bisa dijalankan "
Kode sumber exception8.py
14. File : membuat file baru
try:
sebuah_file = open("absen.txt", 'w')
print "nama file yang tadi dibuat : ", sebuah_file.name
print "mode pembacaan file : ", sebuah_file.mode
print "apakah filenya udah ditutup ? : ", sebuah_file.closed
sebuah_file.close()
print "apakah filenya udah ditutup ? : ", sebuah_file.closed
except IOError, e:
print "proses gagal karena : ", e
Kode sumber file1.py
15. File : mengisi file
try:
sebuah_file = open("absen.txt", 'w')
print "nama file yang tadi dibuat : ", sebuah_file.name
print "mode pembacaan file : ", sebuah_file.mode
print "apakah filenya udah ditutup ? : ", sebuah_file.closed
sebuah_file.write('1. Jajang Surahman, Teknik Informatika, ITENASn')
sebuah_file.write('2. Angel Corine, Manajemen Informatika, UNIKOMn')
sebuah_file.write('3. Samsul Basri, Ilmu Komputer, UPIn')
sebuah_file.close()
print "apakah filenya udah ditutup ? : ", sebuah_file.closed
except IOError, e:
print "proses gagal karena : ", e
Kode sumber file2.py
16. File : membaca file
try:
sebuah_file = open("absen.txt", 'r')
print "nama file yang tadi dibuat : ", sebuah_file.name
print "mode pembacaan file : ", sebuah_file.mode
print "apakah filenya udah ditutup ? : ", sebuah_file.closed
print "isi file : n", sebuah_file.read()
print "posisi pointer pada file : ", sebuah_file.tell()
sebuah_file.close()
print "apakah filenya udah ditutup ? : ", sebuah_file.closed
except IOError, e:
print "proses gagal karena : ", e
Kode sumber file3.py
17. File : membaca file
try:
sebuah_file = open("absen.txt", 'r')
print "nama file yang tadi dibuat : ", sebuah_file.name
print "mode pembacaan file : ", sebuah_file.mode
print "apakah filenya udah ditutup ? : ", sebuah_file.closed
print "isi file : n"
for line in sebuah_file:
print line
print "posisi pointer pada file : ", sebuah_file.tell()
sebuah_file.close()
print "apakah filenya udah ditutup ? : ", sebuah_file.closed
except IOError, e:
print "proses gagal karena : ", e
Kode sumber file4.py
18. File : mengatur pointer pembacaan
try:
sebuah_file = open("absen.txt", 'r')
print "nama file yang tadi dibuat : ", sebuah_file.name
print "mode pembacaan file : ", sebuah_file.mode
print "apakah filenya udah ditutup ? : ", sebuah_file.closed
print "isi file : n"
for line in sebuah_file:
print line
print "posisi pointer pada file : ", sebuah_file.tell()
print "kembali lagi ke awal : ", sebuah_file.seek(0, 0)
print "isi file : n"
for line in sebuah_file:
print line
print "posisi pointer pada file : ", sebuah_file.tell()
sebuah_file.close()
print "apakah filenya udah ditutup ? : ", sebuah_file.closed
except IOError, e:
print "proses gagal karena : ", e
Kode sumber file5.py
19. File : mengatur pointer pembacaan
try:
sebuah_file = open("absen.txt", 'r')
print "nama file yang tadi dibuat : ", sebuah_file.name
print "mode pembacaan file : ", sebuah_file.mode
print "apakah filenya udah ditutup ? : ", sebuah_file.closed
print "isi file : n"
for line in sebuah_file:
print line
print "posisi pointer pada file : ", sebuah_file.tell()
print "kembali lagi ke awal : ", sebuah_file.seek(0, 0)
print "isi file : n"
for line in sebuah_file:
print line
print "posisi pointer pada file : ", sebuah_file.tell()
sebuah_file.close()
print "apakah filenya udah ditutup ? : ", sebuah_file.closed
except IOError, e:
print "proses gagal karena : ", e
Kode sumber file6.py
20. File : ganti nama file
import os
try:
os.rename('absen.txt', 'daftar-hadir.txt')
print "Nama file sudah diubah.."
except (IOError, OSError), e:
print "proses error karena : ", e
Kode sumber file7.py
21. File : hapus file
import os
try:
os.remove('daftar-hadir.txt')
print "File sudah dihapus.."
except (IOError, OSError), e:
print "proses error karena : ", e
Kode sumber file8.py
22. Class : Pengenalan
class PersegiPanjang:
def __init__(self, panjang, lebar):
self.panjang = panjang
self.lebar = lebar
def hitung_luas(self):
return self.panjang * self.lebar
def hitung_keliling(self):
return (2*self.panjang) + (2*self.lebar)
def gambar_persegi_panjang(self):
for i in range(0, self.lebar):
for j in range(0, self.panjang):
print '*',
print ""
….....................................................................................................................
Kode sumber classbasic.py
23. Class : Pengenalan
…...............................................................................................................................
def gambar_persegi_panjang_tanpa_isi(self):
for i in range(0, self.lebar):
if i > 0 and i < self.lebar-1:
for j in range(0, self.panjang):
if j > 0 and j < self.panjang-1:
print '-',
else:
print '*',
else:
for j in range(0, self.panjang):
print '*',
print ""
PersegiPanjangA = PersegiPanjang(20, 10)
PersegiPanjangB = PersegiPanjang(10, 5)
…...............................................................................................................................
Kode sumber classbasic.py
24. Class : Pengenalan
…...............................................................................................................................
print "Panjang persegi panjang A :", PersegiPanjangA.panjang
print "Lebar persegi panjang A :", PersegiPanjangA.lebar
print "Luas persegi panjang A : ", PersegiPanjangA.hitung_luas()
print "Keliling persegi panjang A : ", PersegiPanjangA.hitung_keliling()
print "Menggambar Persegi Panjang A : "
PersegiPanjangA.gambar_persegi_panjang()
print "nMenggambar Persegi Panjang A hanya tepinya saja : "
PersegiPanjangA.gambar_persegi_panjang_tanpa_isi()
print "n"
print "Panjang persegi panjang B :", PersegiPanjangB.panjang
print "Lebar persegi panjang B :", PersegiPanjangB.lebar
print "Luas persegi panjang B : ", PersegiPanjangB.hitung_luas()
print "Keliling persegi panjang B : ", PersegiPanjangB.hitung_keliling()
PersegiPanjangB.gambar_persegi_panjang()
print "nMenggambar Persegi Panjang B hanya tepinya saja : "
PersegiPanjangB.gambar_persegi_panjang_tanpa_isi()
Kode sumber classbasic.py