Pada materi kali ini awalnya kita akan membahas tentang tipe data. tetapi karena satu dan lain hal mungkin
sebaiknya sebelum kita baha tipe data ada baiknya kita membahas beberapa konsep yang ada dalam python.
Python Object
Di dalam python, objek merupakan abtraksi dari data. Bahkan semua yang ada di dalam python adalah objek.
Jika kita mengingat kembali materi sebelumnya, kita mempunya contoh a = 10 , setelah sekarang kita
mengetahui bahwa semua yang ada di python adalah object. Kita akan bertanya ketika objek dibuat, kemudian
apa yang terjadi pada a. Yang terjadi adalah variable tersebut akan mempunyai id, kemudia tipe datanya akan
diset menjadi integer dan object ini akan mempunyai value atau nilai yang akan diisi oleh angka 10. Terakhir
objek dari a ini akan disimpan dalam global namespace.
variable
kemudian kita akan membahas tentang variable, variabel dalam python sama seperti variable dalam bahasa
pemrograman lain. Dalam python variable akan merujuk kepada sebuah object.misalnya a = [1,2,3] , maka a
akan merujuk atau mereference ke dalam sebuah object list yang berisi 1,2,3. atau contoh lain kita akan bahas
dalam contok kode berikut
a = (budi==andi)
b = (budi is andi)
namespace
Namespace, adalah tempat/kontainer dari variableyang kemudian digunakan untuk maping dari names ke dalam
objek. dari contoh sebelumnya kita bisa melihat namespasenya adalah Global. Jika kita kembali lagi ke contoh
budi. dan global frame kita anggap kecamatan, misalkan budi tinggal di kec.cicendo jika kita ingi mencari budi
kita dapat mengimport budi ke dalam module kita seperti
contoh ini menggambarkan bandung merupakan namespace pertama, kemudian kita mencari cicendo di dalam
bandung, lalu kita mencari pajajaran sebagai namespace selanjutnya maka kita akan menemukan budi di
pajajaran. untuk sekarang jangan terlalu bingung dengan namespace, nanti jika kita sudah masuk ke dalam real
code maka kita akan lebih mudah untuk memahami namespace.
# rumahBudi.py
nama = 'budi'
jl = 'Rumah gw ada di'
isi = input('masukan alamat sebenarnya : ')
print(nama)
print(jl)
alamatgw(isi)
______________________________________________________
# alamat.py
def alamatgw(jalan):
jl = jalan
print(jl)
scope
Satu lagi yang perlu kita bahas adalah scope, scope ini berhubungan erat dengan namespace. Menurut pythonya
sendiri scope "a scope is a textual region of a Python program, where a namespace is directly accessible".
Jika merujuk pada w3c yang defenisikanya lebih praktikal akan seperti ini "A variable is only available from
inside the region it is created. This is called scope.".
Dari kedua defenisi di atas dapat disimpulkan scope adalah daerah dimana sebuah variabel dapat di akses. Dalam
python sendiri scope meliputi :
local scope, merupakan scope terdalam yang berisi variable lokal
enclosing scope, merupakan scope yang mempunyai variabel non-lokal tetapi tidak mengandung variable
dari global scope
global scope, contains global names.
built-in scope, berisikan built-in names atau Built-in Functions, misalnya `float(), print(), super() dan lain
lain
angka = 1000
print(id(angka))
print(angka)
angka = 2000
print(id(angka))
print(angka)
# -----------------------------------------------------------------
class orang():
def __init__(self, umur, kota, tanggal):
self.umur = umur
self.kota = kota
self.tanggal = tanggal
print(id(orang))
print(orang.umur)