<SYSTEM_TASK:>
Given the following text description, write Python code to implement the functionality described below step by step
<END_TASK>
<USER_TASK:>
Description:
 Data structure atau struktur data adalah suatu struktur yang digunakan untuk menyimpan koleksi data. Pada Python, struktur data yang sudah tertanam (built in) ada beberapa diantaranya yaitu list, tuples, dictionary, dan set. 
List
Struktur ini bisa digunakan untuk menyimpan objek dengan memperhatikan urutan. Pada struktur list, objek bisa ditambahkan dan dikurangi dengan append dan del. Perhatikan contoh berikut. Kita bisa mengidentifikasi isinya dengan koordinat seperti layaknya string. Kita juga bisa membuat list menjadi counter untuk melakukan loop. 
Sementara itu, kita juga mengakses data dengan memberikan koordinatnya. Kita juga mengambil sebagian data dengan slice.
Step1:  Untuk menambahkan, kita bisa menggunakan fungsi append pada list tersebut. Untuk membuang, kita bisa menggunakan fungsi del pada koordinat yang mau dibuang. Kita juga bisa mengganti elemen di dalam tuples.
Step2:  Tuples
Mirip dengan list, tuples juga digunakan untuk menyimpan objek. Namun, list tidak bisa diganti, ditambahkan, maupun dibuang. Apabila dipaksa diubah, akan memunculkan pesan eror.
Step3:  Kita juga bisa mengambil data seperti halnya pada list.
Step4:  Dictionary
Kita tahu bahwa list dan tuples merupakan kumpulan objek dengan urutan, otomatis cara pemanggilannya adalah dengan key-nya yaitu bilangan bulat. Sementara itu, dictionary, sama seperti namanya
Step5:  Kita juga bisa mengkombinasikan antara list dan tuple dengan dictionary. Misalnya seperti contoh berikut.
Step6:  Sequences dan Sets
Sequences dan Set adalah dua konsep dalam bahasa Python untuk kumpulan objek yang memperhatikan urutan dan tidak memperhatikan urutan. Seperti namanya, sequences (terjemah
<ASSISTANT_TASK:>
Python Code:
# Mendefinisikan isi list bisa dilakukan dengan banyak cara. 
# Salah satunya adalah mendeklarasikan isinya dengan meletakkannya 
# di antara dua tanda kurung siku atau brackets. 
kotakota = ["Bandung", "Jakarta", "Surabaya"]
arahangin = ["Utara", "Barat", "Timur", "Selatan"]
print(kotakota[1],arahangin[-1])
for kota in kotakota:
    print(kota)
    
for arah in arahangin:
    print(arah)
    
for kota in kotakota:
    for arah in arahangin:
        print("Kabupaten/Kota",kota,arah)
        
# Mengakses data
print(kotakota[1])
print(arahangin[-1])
# Mengakses potongan data
print(arahangin[0:2])
Explanation: Data structure atau struktur data adalah suatu struktur yang digunakan untuk menyimpan koleksi data. Pada Python, struktur data yang sudah tertanam (built in) ada beberapa diantaranya yaitu list, tuples, dictionary, dan set. 
List
Struktur ini bisa digunakan untuk menyimpan objek dengan memperhatikan urutan. Pada struktur list, objek bisa ditambahkan dan dikurangi dengan append dan del. Perhatikan contoh berikut. Kita bisa mengidentifikasi isinya dengan koordinat seperti layaknya string. Kita juga bisa membuat list menjadi counter untuk melakukan loop. 
Sementara itu, kita juga mengakses data dengan memberikan koordinatnya. Kita juga mengambil sebagian data dengan slice.
End of explanation
kotakota.append('London')
print(kotakota)
del arahangin[0]
print(arahangin)
arahangin[0] = 'pusat'
print(arahangin)
Explanation: Untuk menambahkan, kita bisa menggunakan fungsi append pada list tersebut. Untuk membuang, kita bisa menggunakan fungsi del pada koordinat yang mau dibuang. Kita juga bisa mengganti elemen di dalam tuples.
End of explanation
# Mendeklarasikan tupel dengan menyebutkan isinya dilakukan 
# dengan cara meletakkan isinya di antara dua tanda kurung 
# biasa atau parenthesis. 
pohon = ("akar","batang","cabang","ranting","daun","buah","biji")
pohon.append("kuncup")
del pohon[0]
Explanation: Tuples
Mirip dengan list, tuples juga digunakan untuk menyimpan objek. Namun, list tidak bisa diganti, ditambahkan, maupun dibuang. Apabila dipaksa diubah, akan memunculkan pesan eror.
End of explanation
# Mengakses data
print(pohon[1])
print(pohon[-2])
# Mengakses potongan data
print(pohon[1:3])
print(pohon[0:-1])
Explanation: Kita juga bisa mengambil data seperti halnya pada list.
End of explanation
# Pendeklarasian dictionary bisa dilakukan dengan mendeklarasikan 
# isinya diantara dua tanda kurung kurawal atau curly braces.
# Isi dari dictionary adalah pasangan, yaitu "kata" dan "artinya"
AM = {
    'title' : 'Antimage',
    'ras' : 'dark elf',
    'atribut utama' : 'agility',
    'kelas' : 'carry',
    'max level' : 25,
    'nama' : "Magina",
}
CM = {
    'title' : 'Crystal Maiden',
    'ras' : 'human',
    'atribut utama' : 'intelegence',
    'kelas' : 'support',
    'max level' : 25,
    'nama' : "Rylai",   
}
print("Dua hero di game Dota 2 contohnya adalah",AM['title'],"dan",CM['title'])
print("Keduanya merupakan hero dari Warcraft III dengan nama ",AM['nama'],"dan",CM['nama'])
for title, nama in AM.items():
    print('%s hero ini adalah %s' % (title, nama))
Explanation: Dictionary
Kita tahu bahwa list dan tuples merupakan kumpulan objek dengan urutan, otomatis cara pemanggilannya adalah dengan key-nya yaitu bilangan bulat. Sementara itu, dictionary, sama seperti namanya: kamus, bisa dipanggil dengan memanggil "kata kunci"nya dan outputnya adalah "artinya".
End of explanation
heroes = [AM, CM]
for hero in heroes:
    print('Hero',hero['title'])
    for title, nama in hero.items():
        print('%s hero ini adalah %s' % (title, nama))
    print("======")
Explanation: Kita juga bisa mengkombinasikan antara list dan tuple dengan dictionary. Misalnya seperti contoh berikut.
End of explanation
# deklarasi objek pada sequences
namahero = "Ironman"
avengers = ["Ironman", "Thor", "Captain America", "Hulk", \
            "Hawk Eye", "Black Widow"]
weapon = ("Wealth", "Hammer", "Shield",\
         "Science", "Intelegence")
print(namahero[0:4])
print(avengers[0:4])
for i in range(4):
    print(avengers[i],"has weapon that is",weapon[i])
# deklarasi objek pada set
life = "love and friendship need time and money"
# test 
print('shot' in life)
print('end' in life)
Explanation: Sequences dan Sets
Sequences dan Set adalah dua konsep dalam bahasa Python untuk kumpulan objek yang memperhatikan urutan dan tidak memperhatikan urutan. Seperti namanya, sequences (terjemah: barisan) adalah kumpulan objek yang memperhatikan urutan. List, Tuples adalah contoh sequences. String juga merupakan contoh sequences. Sedangkan set adalah kumpulan objek yang tidak memperhatikan urutan ataupun berapa banyak ia muncul. Set sendiri dideklarasikan dengan perintah set. Keduanya memiliki persamaan, yaitu membership test. Yaitu anggota dan tidak anggota. Perbedaannya ada di urutan. Sequence bisa dipanggil berdasarkan urutan atau koordinatnya, sedangkan set tidak bisa. Output dari set adalah logical, yaitu True atau False. 
Berikut contoh sequence dan set.
End of explanation
<END_TASK>