Memaparkan catatan dengan label Python. Papar semua catatan
Memaparkan catatan dengan label Python. Papar semua catatan

Tutorial Membuat Program Face Recognizer Menggunakan OpenCV Python #1: Membuat Database

Program Face Recognizer OpenCV Python
Program Face Recognizer OpenCV Python
Tutorial Membuat Program Face Recognizer Menggunakan OpenCV Python #1: Membuat Database - Setelah post untuk OpenCV pertama yang saya memberikan tutorial membuat Face Detection. Nah dengan berbekal pengertian dan kemampuan dalam membuat Face Detection tersebut, kita dapat mengawinkannya dengan Machine Learning untuk membuat Face Recognition sendiri.

Tutorial Membuat Program GUI Google Mail Sender Menggunakan Bahasa Python

Program Google Mail Sender Python
Program Google Mail Sender Python
Tutorial Membuat Program GUI Google Mail Sender Menggunakan Bahasa Python - Sudah cukup lama sejak terakhir kali kita bertemu dalam tutorial membuat program GUI, akhir - akhir ini memang saya jarang kembali membuat GUI menggunakan Tkinter, jadi saat saya coding aplikasi Google Mail Sender ini jari - jemari saya kembali terasa kaku.

Tapi hasilnya tetap seperti dulu, bahkan sedikit kemajuan dengan adanya warna yang saya pilih agar menarik. Oleh karena itu sekarang saya akan membagikan tutorialnya untuk membuat Program GUI Google Mail Sender menggunakan Bahasa Python.

Tutorial Membuat Program Face, Eye dan Edge Detector Menggunakan OpenCV Python

Face dan Edge Detector OpenCV Python
Face dan Edge Detector OpenCV Python 
Tutorial Membuat Program Face, Eye dan Edge Detector Menggunakan OpenCV Python - Computer Vision atau yang lebih dikenal dan disingkat CV merupakan salah satu cara untuk mengolah video dan foto menggunakan barisan code. CV sendiri mendukung berbagai bahasa, contohnya Java, C++ dan pastinya Python yang juga akan kita pakai dalam tutorial Face dan Edge Detector kali ini menggunakan OpenCV.

Menebak Jenis Kelamin Seseorang Berdasarkan Namanya Menggunakan Python Machine Learning

Prediksi Nama Python Machine Learning
Prediksi Nama Python Machine Learning
Menebak Jenis Kelamin Seseorang Berdasarkan Namanya Menggunakan Python Machine Learning - Machine Learnig sangat diperlukan dalam era sekarang ini. Kebutuhan akan pengolahan data yang sangat besar terus berkembang, tentu saja mana mungkin manusia melakukannya secara manual untuk mengolah data yang sangat besar.

Mengenal Algoritma K-Nearest Neighbors dan Penerapannya pada Python Machine Learning

Algoritma KNearestNeighbors pada Python
Algoritma KNearestNeighbors pada Python
Mengenal Algoritma KNearestNeighbors dan Penerapannya pada Python Machine Learning - Machine Learning merupakan salah satu tren teknologi masa kini, banyak data diolah menggunakan teknik Machine Learning. Kecerdasan manusia tidak dibutuhkan terlalu banyak, kita hanya perlu menuliskan algoritma sederhana untuk mengolah data besar.

Dan pada posting kali ini kita belajar bagaimana untuk membuat barisan code sederhana dengan memanfaatkan Python Machine Learning. Untuk menggunakan Python Machine Learning kita cukup memerlukan modul external bernama Scikit-Learn yang pernah saya bahas pada Membuat Simple Classifier Menggunakan Python Machine Learning.

Jika pada postingan sebelumnya saya menggunakan salah satu algoritmanya bernama Tree dan memanggil metode DecisionTreeClassifier. Maka kali ini kita akan mulai Algoritma baru yang bernama KNearestNeighbors.

K-nearest neighbor adalah algoritma supervised learning dimana hasil dari instance yang baru diklasifikasikan berdasarkan mayoritas dari kategori K-tetangga terdekat. Tujuan dari algoritma ini adalah untuk mengklasifikasikan obyek baru berdasarkan atribut dan sampel - sampel dari data training.

Algoritma K Nearest neighbor menggunakan neighborhood classification sebagai nilai prediksi dari nilai instance yang baru. Sebelum menyetuh keyboard untuk mulai menuliskan baris code, kita akan belajar bagaimana penerapan KNearestNeighbors dengan manual menggunakan kertas.

ALUR CERITA ALGORITMA K-NEAREST NEIGHBORS

Nah, sekarang kita akan belajar bagaimana Algoritma KNeareseNeighbors berjalan, atau alur cerita dari algoritma ini. Sebenarnya mudah saja, kita hanya harus memplot semua nilai training data yang ada, untuk kemudian data baru dapat kita tentukan, data tersebut masuk kategori mana, berdasarkan posisi terdekat dari data yang sudah ada.

Sebagai contoh pada tabel dibawah ini saya memiliki 4 buah data, data dibawah ini adalah hubungan antara Daya dalam detik dengan kekuatan yang dihasilkan dalam kg per meter persegi, beserta kategorinya, Jelek atau Bagus.
Daya Kekuatan Label
7 s 7 kg/meter persegi Jelek
7 s 4 kg/meter persegi Jelek
3 s 4 kg/meter persegi Bagus
1 s 4 kg/meter persegi Bagus
Dari tabel dan data yang telah kita ketahui diatas kita ingin mencari apakah sebuah data baru dengan Daya 3 s dan Kekuatan 7 kg/meter persegi berlabel bagus ? atau justru jelek ?

Nah disini kita bisa menggunakan Algortima K-Nearest Neighbors. Hal pertama kita harus memplot seluruh data tersebut kedala bidang cartesius. Hal ini sebagai pandangan awal atau bisa disebut hipotesis.
Baca Juga: Membuat Jarvis Menggunakan Python
Agar lebih simple, disini saya menggunakan fungsi plot dari Matplotlib pada Python. Saya masukkan seluruh datanya dengan mengasumsikan Daya sebagai X dan Kekuatan sebagai Y. Kemudian saya tambahkan juga data baru yang akan kita cari yaitu 3 dan 7. Berikut codenya.

import matplotlib.pyplot as plt

x = [7,7,3,1]
y = [7,4,4,4]

plt.scatter(x,y)

#data baru
plt.scatter(3,7)

plt.xlabel("Daya")
plt.ylabel("Kekuatan")

plt.show()


Dari code plot data diatas, kita akan melihat tampilan data baru yang ditandai dengan warna yang berbeda. Berikut tampilannya.
Data K-Nearest Neighbors
Data K-Nearest Neighbors
Disana terlihat bahwa ada 3 data dengan jarak yang cukup dekat dengan data baru yaitu data yang terletak pada titik 1,4, titik 3,4 dan titik 7,7. Sekarang kita coba analisis tampilannya, apakah label pada masing masing data terdekat pada data baru yang telah diketahui.
Data K-Nearest Neighbors
Data K-Nearest Neighbors
Agar lebih mudah saya misalkan dengan N, artinya Nearest. Disana terlihat bahwa N-1 Berlabel Bagus pada tabel diatas. N-2 juga demikian berlabel Bagus. Tetapi N-3 berlabel Jelek. Dari sini kita bisa asumsikan bahwa data baru kita adalah bagus. Mengapa ??

Karena 3 tetangga terdekat dari data baru didominasi oleh label bagus. Yaitu 2 data, sedangkan yang berlabel jelek hanyalah 1 data.
Nah, jika begitu apakah hipotesis kita benar ?? Kita lakukan analisa lagi dengan menggunakan Matematika. Disini kita menggunakan teknik square distance. Caranya adalah kita hitung dengan rumus (X_train_data - X_data_Baru)^2 + (Y_train_data - Y_data_baru)^2

Dari Data pada tabel diatas dan data baru yang diketahui kita bisa membuat perhitungan sebagai berikut.
Daya Kekuatan N-Value
7 7 (7 - 3)^2 + (7 - 7)^2 = 16
7 4 (7 - 3)^2 + (4 - 7)^2 = 25
3 4 (3 - 3)^2 + (4 - 7)^2 = 9
1 4 (1 - 3)^2 + (4 - 7)^2 = 13
Terlihat dari hasil N-Value pada tabel diatas bahwa hipotesis kita benar. Disana tertera bahwa titik 7,7, titik 3,4 dan titik 1,4 memang yang terdekat dari data baru (ditandai dengan value yang kecil). Dan hasil analisa kita bisa dibilang akurat karena sesuai antara data visual dengan data matematis.

MEMILIH JUMLAH TETANGGA (NEIGHBORS) DENGAN TEPAT

Setelah kita melakukan percobaan diatas, kalian pasti sudah tidak asing dengan Neighbors. Yap tetangga ! disana saya mengurutkan tetangga dari yang terdekat dan membuang tetangga terjauh. Maka disana saya menggunakan n = jumlah data - 1.

Sebenarnya pemilihan n ini bebas saja, tetapi tetap ada aturannya jumlah tetangga terdekat atau n harus kurang dari atau sama dengan jumlah data yang diketahui. 

Memang cukup simple jika bermain dengan data yang sedikit seperti diatas, tanpa menentukan jumlah n yang spesifik kita sudah bisa mendapatkan hasil yang cukup akurat. Lalu bagaimana kita menentukan jumlah tetangga yang akurat untuk data yang sangat besar agar hasil lebih akurat ??

Untuk itu kita sudah harus melepaskan pensil kita dan mulai mengetik baris kode. Kenapa ?? Biarkan mesin berpikir karena itulah tujuan dari Machine Learning.

Kembali ke topik cara menentukan jumlah tetangga terdekat agar mendapatkan hasil prediksi yang akurat, kita memerlukan metode yang dinamakan Tuning Parameter. Apa maksudnya ? Maksudnya adalah kita list semua prediksi nilai n kita kemudian kita tes skornya masing - masing. Nilai tertinggi berarti nilai n tersebut semakin akurat dalam menentukan data baru.

Tuning Parameter Pada K-Nearest Neighbors

Nah, untuk memulai Tuning Parameter kita harus menyiapkan data yang besar. Tentunya agar tuningnya tidak menghasilkan miss scoring, atau score yang kurang tepat. Oleh karena itu disini saya menggunakan data dari iris.
Bagi yang belum tahu iris. Iris adalah kumpulan data dari 3 jenis bunga yang masing - masing bunganya memiliki 50 data meliputi panjang dan lebar pada petal dan sepal bunga tersebut. Data Iris ini otomatis terbawa didalam paket Scikit-Learn.

Dan pada sub-bab ini kita akan menggunakan Datasets tersebut dan memulai mencari nilai n yang paling tepat untuk memprediksi data iris baru dengan keakuratan yang maksimal. Berikut codenya.

from sklearn.datasets import load_iris
import matplotlib.pyplot as plt
from sklearn.model_selection import cross_val_score
from sklearn.neighbors import KNeighborsClassifier

iris = load_iris()

x = iris.data
y = iris.target

k_range = range(1,31)
k_skor = []

for i in k_range:
knn = KNeighborsClassifier(n_neighbors = i)
skor = cross_val_score(knn, x, y, cv=10, scoring='accuracy')
k_skor.append(skor.mean())

plt.plot(k_range, k_skor)
plt.xlabel('K argumen')
plt.ylabel('K Skor')

plt.show()


Pertama - tama kita harus mengambil data dan target iris kedalam 2 variabel terpisah, ini bertujuan agar tidak tercampur nanti saat tuning maupun saat memprediksi data baru. Data ini adalah data - data atau ciri - ciri bunga, sedangan target adalah semacam label pada tabel kita diatas.

Kemudian kita membuat range dengan value angka yang kita prediksi menjadi nilai n yang terbaik. Disini saya mengetes 30 value, dari 1 sampai 30. Kemudian kita buat list untuk menampung skor untuk tiap nilai n kita nantinya.

Kemudian kita loop dan kita definisikan KNeighborsClassifier dan test skor masing - masing nilai n kita dengan cross_val_score, dengan cv atau lipatan data adalah 10, dan scoring berdasarkan accuracy atau ketepatan. Terakhir agar mudah dibaca maka kita plot data pada nilai k dan skor k.

Dan hasilnya adalah kita melihat grafik seperti ini

Tuning Parameter K-Nearest Neighbors
Tuning Parameter K-Nearest Neighbors
Pada grafik terlihat kalau N terakurat berada pada angka 13, 18 dan 20. Tapi, karena setelah angka 20 muncul, skor cenderung turun, maka n = 20 adalah nilai tetangga terbaik untuk mendapatkan hasil prediksi data baru pada Iris datasets.

PENERAPAN K-NEAREST NEIGHBOR PADA PYTHON

Setelah kita paham bagaimana Algortima K-Nearest Neighbors bekerja maka kita akan mencoba membuat prediksi pada iris dengan menggunakan nilai n = 20, sesuai hasil terbaik dari tuning parameter diatas.

Sama seperti sebelumnya, kita harus mendefinisikan data dan target iris kedalam 2 variabel terpisah.
Kemudian kita fit dan predict. Masih sama ketika saya posting Machine Learning menggunakan Tree Classifier dulu. Berikut code lengkapnya.

from sklearn.datasets import load_iris
from sklearn.neighbors import KNeighborsClassifier

iris = load_iris()

x = iris.data
y = iris.target

knn = KNeighborsClassifier(n_neighbors = 20)

knn.fit(x,y)

knn.predict([[20,34,21,7]])


Yap, begitulah kita memprediksi data baru menggunakan K-Nearest Neighbors mengunakan Python. Dan jika code diatas kita run maka akan mendapatkan output berupa array. Seperti yang telah saya katakan pada post Machine Learning pertama.
Baca juga: GUI Angka Terbilang dengan Python
Bahwasanya Scikit-Learn lebih baik membaca angka daripada kata. Oleh karena itu jenis bunga pada Iris juga dimisalkan angka yaitu 0 untuk Setosa, 1 untuk Versicolor dan 2 untuk Virginica.

KESIMPULAN

Machine Learning adalah tren pengolahan data yang sangat menyenangan untuk dipelajari. Saran saya jangan hanya hafal baris code pada modul Machine Learning yang tersedia tetapi pahami juga bagaimana hasil tersebut didapatkan.

Karena dengan begitu maka ilmu kita akan terasa lebih bermakna. Dan semoga ilmu diatas bermanfaat. Silahkan tanyakan apabila ada yang kurang dipahami. Terima kasih sudah membaca artikel saya tentang Mengenal Algoritma K-Nearest Neighbors dan Penerapannya pada Python Machine Learning.

Membuat Program GUI A.I. Chatbot Bersuara Seperti Jarvis Menggunakan Python dan AIML

Program GUI Chatbot Bersuara
Program GUI Chatbot Bersuara
Membuat Program GUI A.I. Chatbot Bersuara Seperti Jarvis Menggunakan Python dan AIML - Apakah kalian pernah mengenal atau mendengar kata - kata atau sebutan JARVIS ? Kata ini  dipopulerkan oleh si Iron Man, Tony Stark dalam 3 sekuel film yang mengagumkan. Jujur admin sendiri dari hero Avengers memang memfavoritkan Iron Man, karena seperti yang kita tahu Tony Stark ini yang paling jenius akan semua hal berbau Teknologi.

Contoh Program GUI Grafik Maker dengan Python

Program GUI Python
Program GUI Python
Contoh Program GUI Grafik Maker dengan Python - Grafik adalah salah satu bentuk visualisasi sebuah data yang sering digunakan oleh masyarakat saat ini. Ada bermacam - macam grafik yang sudah kita kenal. Ada grafik berupa lingkaran, garis - garis, titik dan yang seperti persegi panjang.

Program GUI Pengubah Angka Decimal ke Bentuk Binary, Octal, dan Hex dengan Python

Program GUI Pengubah Bilangan Decimal ke Bilangan Binary, Octa dan Hex dengan Python
Program GUI Pengubah Bilangan Decimal
ke Bilangan Binary, Octa dan Hex dengan Python
Program GUI Pengubah Angka Decimal ke Bentuk Binary, Octa, dan Hex dengan Python - Pada asalnya bahasa pemrograman komputer tidak secanggih saat ini. Pemrograman yang dibawa oleh komputer pertama kalinya hanyalah angka 0 dan 1. Setelah itu muncul bahasa program lainnya seperti Assembly, dari situlah titik awal lahirnya bahasa program yang kita gunakan sekarang ini.

Mengubah Script Python Menjadi Crossplatform Executable dengan Pyinstaller

Ubah Python ke Executable Semua OS
Ubah Python ke Executable Semua OS
Mengubah Script Python Menjadi Crossplatform Executable dengan Pyinstaller - Akhir - akhir ini kita sering membahas seputar tutorial Python di Otak keren. Sering kali juga orang yang bukan programmer Python ingin juga mencicipi hasil kerja atau coding kita tanpa memerlukan Python terinstall di mesin mereka.

Contoh Program Mencari Mean, Median dan Modus Data Tunggal dengan Python

Contoh Program Python
Contoh Program Python
Contoh Program Mencari Mean, Median dan Modus Data dengan Python - Sewaktu kita sekolah, pastinya kita sering bertemu dengan 3 kata ini yaitu Mean, Median dan Modus. Yap, tentu saja hal ini dikarenakan ilmu statistika ini masuk kedalam kurikulum ajar Indonesia untuk tingkat dasar yaitu SD dan SMP.

Tutorial GUI Python : Menambahkan Fungsi, Event dan Bind pada Tkinter #4

GUI Python Tkinter
GUI Python Tkinter
Tutorial GUI Python : Menambahkan Fungsi, Event dan Bind pada Tkinter - Tutorial untuk membuat tampilan Graphical User Interfaces atau yang disingkat GUI dengan menggunakan Python dan module Tkinter telah memasuki bagian ke empat. Semoga sobat semua tetap suka dan bersemangt untu belajar GUI Python bersaama Otak Keren. Sebelum memasuki Tutorial kali ini silahkan kalian cek Tutorial GUI Python pada bagian pertama, kedua dan ketiga.

Pada kali ini kita akan belajar bagaimana membuat elemen pada Tkinter dapat menjalankan suatu fungsi tertentu. Tak hanya itu kita juga akan belajar bagaimana membuat fungsi yang hanya dapat berjalan dengan syarat khusus, misalnya Button yang hanya akan bekerja jika di klik kanan. Untuk itu kita akan belajar membuat Event dan Bind pada Tkinter.

CARA MENAMBAHKAN FUNGSI PADA TKINTER

Langsung saja kita akan bahas bagaimana sih caranya kita dapat menambahkan Fungsi pada Tkinter. Penambahan fungsi ini kita hanya perlu untuk memenggil parameter Command. Parameter ini akan memanggil fungsi yang telah kita definisikan sebelumnya saat kondisinya sudah benar.
Baca Juga : Tips Menjadi Programmer dan Blogger
Parameter Command ini dapat digunakan hampir pada semua elemen pada window Tkinter. Tapi pantasnya kita meletakkannya pada fungsi Button. Langkah untuk menambahkan fungsi menggunakan Command ini adalah, pertama kita harus membuat fungsi kita sendiri dengan fungsi def. Contohnya kali ini saya akan membuat fungsi untuk memprint out sebuah text.
from tkinter import *

root = Tk()

def cetak():
print('Fungsi Tercetak')
return

tombol = Button(root, text='Cetak !', fg='red', command=cetak)
tombol.pack()

root.mainloop()

Nah, bisa dilihat pada parameter Button yang saya buat, ada parameter command dengan value cetak yang merupakan fungsi yang telah kita buat sebelumnya. Hasilnya jika kita mengklik button tersebut maka kita akan melihat text  "Fungsi Tercetak" pada Python Shell.

CARA MENAMBAHKAN EVENT DAN BIND PADA TKINTER

Seperti gambaran yang saya berikan tentang Event dan Bind di awal tentang fungsi yang lebih advance ketimbang Command. Event dan Bind mampu menghandle kondisi khusus untuk menjalankan fungsi tertentu. Misalnya fungsi yang khusus untuk klik kanan.

Sederhananya kita hanya perlu menambahkan parameter event pada window kita dan memasang bind method pada elemen yang akan jadi jembatan menuju fungsi kita. 
Ada banyak key event yang tersedia pada Tkinter. Masing - masing key tersebut memiliki fungsinya sendiri. Diantaranya yang paling sering ditemui dalam program GUI menggunakan Python dan Tkinter adalah :
  • <Button-1>  Fungsinya untuk menangkap klik kiri
  • <Button-2>  Fungsinya untuk menangkap klik tengah
  • <Button-3>  Fungsinya untuk menangkap klik kanan
  • <Button-4>  Fungsinya untuk menangkap scroll up ( Key ini khusus Linux)
  • <Button-5>  Fungsinya untuk menangkap scroll down ( Khusus Linux )
  • <Double-Button-1>  Fungsinya untuk menangkap double klik kiri ( Berlaku juga untuk Buton-2 dan Button-3)
Untuk versi lengkapnya silahkan lihat Listnya disini. Sekarang akan kita bahas bagaimana caranya untuk menggunakan Event dan Bind ini pada elemen kita. Caranya tambahkan parameter event pada fungsi kita, dan tambahkan bind method pada elemen kita. Contohnya kali ini kita akan gunakan kembali tombol dan fungsi yang tadi dengan sedikit perubahan.

from tkinter import *

root = Tk()

def cetak(event):
print('Fungsi Tercetak')
return

tombol = Button(root, text='Cetak !')
tombol.pack()
tombol.bind('<Button-3>', cetak)

root.mainloop()


Nah, terlihat kalau sudah tidak ada lagi parameter Command. Tetapi digantikan dengan new line yang berisikan bind method dan terpasang pada elemen kita. Sekarang coba jalankan dan klik kiri pada tombol tersebut. Maka tidak akan ada text yang tercetak. Sedangkan jika kita megklik kanan tombol tersebut maka akan muncul text pada Python shell.

KESIMPULAN

Bagaimana ? Tutorial kali ini mudah bukan. Sebenarnya tidak ada yang sulit kalau kita sudah belajar. Kalau ada pertanyaan seputar Menambahkan Fungsi, Event dan Bind pada Tkinter. Silahkan tinggalkan di kolom komentar bawah.

Jangan lupa juga stay tune di Otak Keren dan Cek juga Tutorial GUI Python bagian 1, bagian 2 dan bagian 3 sob !


Tutorial GUI Python : Mengenal Grid, Place, dan PhotoImage di Tkinter #3

GUI Python Tkinter
GUI Python Tkinter
Tutorial GUI Python : Mengenal Grid, Place, dan PhotoImage di Tkinter #3 - Pada bagian ke 3 dari seri Tutorial Membuat Aplikasi Desktop. Seperti episode sebelumnya kita masih akan belajar basic Tkinter. Hal yang akan kita pelajari kali ini adalah bagaimana pengaturan peletakan elemen dengan Grid dan Place serta kita akan belajar bagaimana memasukkan Foto pada window Tkinter kita.

Tutorial GUI Python : Pengenalan Apa itu Tkinter #1

GUI Python Tkinter
GUI Python Tkinter
Tutorial GUI Python : Pengenalan Apa itu Tkinter – Halo sobat Otak Keren, sesuai janji saya pada Fanspage Otak Keren, bahwa jika aplikasi pertama saya telah rilis dan banyak mendapatkan feedback positif dari orang – orang maka saya akan memberi tutorial dari basic sampai advance tentang bagaimana tutorial membuat aplikasi tersebut.

Contoh Program Dropdown Menu dengan Tkinter

Dropdown Menu
Dropdown Menu
Contoh Program Dropdown Menu dengan Tkinter - Pada artikel kali ini Otak Keren akan kembali membahas tentang basic Tkinter. Pada kesempatan kali ini kita juga akan belajar basic dari Contoh Program Dropdown Menu dengan Tkinter. Setelah sebelumnya saya telah memberikan tutorial bagaimana membuat Contoh Program GUI Login Form dengan Tkinter,

Nah, buat yang belum kenal apa itu Tkinter dan belum tahu bagaimana cara untuk menginstallanya pada komputer atau laptop kita silahkan lihat tutorial Tkinter saya sebelumnya yaitu tentang Contoh Program GUI Login Form dengan Tkinter,

Jika sudah siap dan mengerti apa maksud dan tujuan dari dibuatnya module Tkinter maka kita akan siap untuk memulai tutorial membuat dropdown menu menggunakan Tkinter kali ini.

CARA MEMBUAT DROPDOWN MENU DENGAN TKINTER

Sebelum kita mulai, saya menggunakan OS Arch Linux dan menggunakan Python v3.6.0 dengan Eric sebagai IDE nya. Seperti biasa sebelum memulai pada inti pembuatan dropdown menu menggunakan Tkinter, kita akan mengimport module Tkinter tersebut.
from tkinter import *

root = Tk()

Nah, setelah mengimport seluruh isi modul Tkinter kita akan mulai membuat parent menu kita menggunakan fungsi Menu() dan method config
from tkinter import *

root = Tk()

parent = Menu(root)
root.config(menu=parent)

Maksud dari Line[5] dan Line[6] tersebut adalah, kita buat menu dengan variabel parent dan diletakkan pada window kita, yaitu root. Kemudian, kita buat semacam menu bar pada window kita menggunakan config, menu bar itu dipertegas dengan fungsi menu yang diarahkan pada parent.

Setelah ini kita akan buat fungsi sederhana sebagai indikator bahwa setiap button dalam menu bekerja dengan baik. Kemudian kita akan membuat menu utama dengan fungsi Menu lagi, tetapi ditanamkan pada parent bukan lagi root.
from tkinter import *

root = Tk()

parent = Menu(root)
root.config(menu=parent)

#fungsi sederhana ( print )
def perintah():
    print('OK work !')

#menu utama, diberi nama 'file'
file = Menu(parent)
menu.add_cascade(label='File', menu=file)

Jadi, pada Line[13] kita membuat variabel menu utama yang terletak pada menu bar yang telah kita buat yaitu parent. Selanjutnya Line[14] kita membuat tombol menu utama dengan nama File dan diletakkan pada variabel pada Line[13]
Baca Juga : Contoh program Classifier pada Python Machine learning
Untuk membuat sub menu dari menu utama kita yaitu File, kita menggunakan add_command method, disini kita juga dapat menambahkan fungsi yang kita buat sebagai perintah saat tombol diklik.
from tkinter import *

root = Tk()

parent = Menu(root)
root.config(menu=parent)

#fungsi sederhana ( print )
def perintah():
    print('OK work !')

#menu utama, diberi nama 'file'
file = Menu(parent)
menu.add_cascade(label='File', menu=file)
file.add_command(label='Open', command=perintah)
file.add_command(label='Save', command=perintah)

root.mainloop()

Pengertian add_command method ini sangat sederhana, kita membuat sub menu pada variabel file dengan nama Open dan Save misalnya dengan memasukkan command fungsi perintah yang telah dibuat sebelumnya. Terakhir, mainloop untuk menjalankan GUI kita.

Silahkan coba dirun dan klik menu kita, kemudian klik sub menunya. Jika tercetak kata dari fungsi yang kalian buat maka itu tandanya code program dropdown menu kalian sudah benar, jika belum silahkan koreksi dan cek kembali apakah ada code yang terlewatkan.

Sampai disini code kita sudah siap dan selesai, tapi mana mungkin ada menu hanya 1 atau 2 tombol, maka silahkan buat kembali menggunakan code yang sama dengan penyesuaian nama variabel.
file = Menu(parent)
menu.add_cascade(label='File', menu=file)
file.add_command(label='Open', command=perintah)
file.add_command(label='Save', command=perintah)

"""
Copy code diatas, buat menu dan sub menu baru dengan penyesuaian nama variabel
"""
edit = Menu(parent)
menu.add_cascade(label='Edit', menu=file)
edit.add_command(label='Copy', command=perintah)
edit.add_command(label='Paste', command=perintah)

"""
Lanjutkan sendiri, terserah kalian !
.
.
.
"""

KESIMPULAN

Nah, pada dasarnya tkinter bukanlah sesuatu yang sulit, karena hal yang sederhana juga dilakukan dengan usaha yang ringan disini. Berikut contoh GUI yang telah dibuat dengan 2 menu dan 4 sub menu.
Dropdown Menu
Dropdown Menu
Gimana ? Sudah mulai mengerti tentang Contoh Program Dropdown Menu dengan Tkinter ? Kalau belum silahkan tinggalkan komentar di bawah ya sob ! Jangan lupa juga lihat Tutorial unik Python lainnya dari Otak Keren.

Contoh Program Classifier pada Machine Learning Python

Machine learning
Machine Learning
Contoh Program Classifier pada Machine Learning Python - Seperti yang saya katakan pada artikel sebelumnya bahwa bahasa program Python bisa untuk melakukan apa saja dalam hal programming. Kali ini kita juga akan mempelajari bagaimana basic dari sebuah module untuk Python Machine Learning yaitu scikit-learn. Tapi sebelumnya silahkan cek artikel saya sebelumnya tentang Membuat login form dengan Tkinter.

Membuat GUI Login Form Sederhana Menggunakan Python3 dengan Tkinter !

Tkinter
Login Form dengan Tkinter
Membuat GUI Login Form Sederhana Menggunakan Python3 dengan Tkinter ! - Bahasa program Python sangat baik jika digunakan dalam hal apa saja. Mengacu pada istilah bahwa Python adalah General Purpose Languange, memang Python dapat dibawa untuk melakukan apa saja dalam hal programming.

Contoh Program Python Stopwatch Sederhana

Contoh Program Python Stopwatch Sederhana - Seperti yang kita tahu, stopwatch adalah alat yang biasa digunakan untuk mengukur kecepatan suatu benda secara akurat. Stopwatch biasanya berbentuk lingkaran dengan 2 jarum, satu menunjuk menit dan satu lagi berputar cepat menunjukan detik. Ada pula stopwatch yang menggunakan angka digital sebagai displaynya.

Lantas pernahkah kamu tahu software Stopwatch ? Pasti iya, handphone kita terdapat fitur itu, lalu pernahkah terpikir oleh kita bagaimana jika membuatnya program stopwtch sendiri ?

Contoh Program Python Stopwatch Sederhana
Simple Stopwatch
Oleh karena itu, pada postingan kali ini, saya akan mencoba mengajarkan cara membuat program sederhana menggunakan python yaitu simple stopwatch.

Pada postingan tutorial membuat "Program Python Stopwatch Sederhana" ini, saya menggunakan Python versi 3.5.3 for Windows, IDEnya menggunakan Pycharm community edition 2016 3.2.

Jadi sebelum kita mulai caranya, kita harus mengerti bagaimana jam bekerja. Kita tahu bahwa setiap menit, detik dan jam berakhir di 59 maksudnya setelah meyentuh angka 60, angka 60 ini tidak akan di printout, tapi langsung kembali menjadi 00 tapi bagian depannya bertambah 1 angka.

Setelah paham bagaimana cara jam bekerja, kita buat alur algoritmanya. Algoritma atau susunan cara bekerja / tatanan proses hingga hasil akhir adalah hal yang penting dalam setiap pemrograman menggunakan bahasa apa saja.

Tatanan kerja yang saya gunakan adalah, pertama kita buat 2 digit untuk masing-masing komponen waktu. saya namakan seperti ini agar mudah diingat, set semua valuenya jadi 0 karena waktu pastilah dimulai dari 0

depanJam = 0
jam = 0
depanMenit = 0
menit = 0
depanDetik = 0
detik = 0


Nah kira-kira gitu strukturnya dan untuk masuk ke bagian selanjutnya kita perlu menggunakan module bernama time, silahkan import dan letakkan di line [1]

import time 

Selanjutnya biar jalan jamnya kita perlu while loop. Kita set loopnya agar selalu True dan set argumentnya agar setiap detiknya, variabel detik kita nambah dan setiap detiknya menyentuh angka 9 maka depanDetik bertambah 1, dan apabila depanDetik menyentuh angka 9 maka menit akan bertambah 1, begitu seterusnya sampai ke jam.

while True :
 time.sleep(1)
 detik += 1
 if detik == 9:
  detik = 0       
  depanDetik += 1   
 if depanDetik == 6:
          menit +=1       
  depanDetik = 0       
  detik = 0   
 if menit == 9:
          menit = 0       
  depanMenit += 1   
 if depanMenit == 6:
          jam +=1       
  depanMenit = 0       
  menit = 0   
 if jam == 9:
         depanJam += 1       
  jam = 0   
 print("{0}{1}:{2}{3}:{4}{5}".format(depanJam,jam,depanMenit,menit,depanDetik,detik), end="\r")

Perlu diketahui untuk yang bingung dengan beberapa komponen codenya,
time.sleep() itu gunanya untuk mengatur berapa detik delay antar code yang akan di execute. Di tutor ini saya gunakan arg 1 karena saya ingin setiap 1 detik, maka var detik akan brtambah 1 sesuai ketentuan jam pada umumya.

selanjutnya atribut end="\r" pada akhir print. maksudnya adalah kita ingin stopwatch ini bertahan di satu line, tidak mencetak line baru yang justru akan terlihat seperti countdown, maka dari itu ditambahkanlah atribut ini.
Baca Juga:
1. Program Face dan Edge Detection Menggunakan OpenCV Python
2. Tutorial Program GUI ChatBot Kecerdasan Buatan Menggunakan Python dan AIML
3. Menebak Gender Seseorang Berdasarkan Nama dengan Python Machine Learning
Catatan buat sobat yang juga mencoba di versi IDE yang sama jangan di run langsung di Pycharmnya, code ini tak akan berfungsi semestinya, silahkan bua codenya lalu save, cari file agan di explore dan klik kanan filenya, select open with, kemudian pilih python.

Cara run with python
Select Python
Sobat juga bisa menambahkan pelengkap seperti "klik [ENTER] untuk start !" atau "Masukkan maximal time" sebelum codenya dijalankan, silahkan berkreasi sendiri. Untuk versi kompleknya mungin akan perlu lebih banyak waktu dan baris code, jadi ini tutoril sebagai basic mindnya saja.

Sekian artikel saya, semoga membantu dan bermanfaat, sampai jumpa di next artikel.