Tampilkan postingan dengan label python. Tampilkan semua postingan
Tampilkan postingan dengan label python. Tampilkan semua postingan

Minggu, 12 Februari 2023

Dasar Bahasa Pemrograman Python yang Wajib Diketahui

Bahasa Pemrograman Python merupakan bahasa pemrograman terpopuler dan banyak digunakan saat. Untuk dapat menggunakan bahasa pemrograman satu ini diperlukan pemahaman yang kuat tentang dasar bahasa tersebut, berikut adalah dasar bahasa pemrograman Python yang wajib diketahui.

Input                                                                                                   

Input merupakan dasar pertama dari bahasa pemrograman Python. Input merupakan proses untuk memasukan data ke template coding. Metode input pada Python dapat dijalankan dengan memberikan masukan dengan instruksi  input() serta juga bisa menggunakan raw_input().

Input yang dapat dimasukan pada Python dapat berupa teks dan juga angka. Fungsi dari input() adalah untuk mengambil data yang merupakan angka sedangkan raw_input() digunakan untuk mengambil data input berupa teks.

Output

Dasar bahasa pemrograman Python kedua adalah output. Output berperan sebagai keluaran dari input yang diberikan sebelumnya. Pada Python output dapat dibuat dengan fungsi print(). Selain itu peran output juga sebagai media yang dapat menampilkan tulisan informasi dan ditampilkan ke layar.

Namun tidak hanya ditampilkan kelayar saja, peran output disini juga dapat menampilkan informasi ke disk atau ke salah satu daripada unit I/O. Berbeda dari Python versi 3.0 yang menggunakan fungsi print() untuk output, pada Python versi 2.0 output dibuat dengan menuliskan syntax print saja.

Data

Dasar berikutnya yang wajib dipelajari pada bahasa pemrograman Python adalah data. Data pada Python merupakan suatu media atau memori yang difungsikan untuk  menampung berbagai informasi yang dibuat pada Python.

Pada Python data dapat berupa variabel, konstanta, dapat berisi bilangan dan juga dapat berisi kalimat. Beberapa tipe data yang luas penggunaannya pada bahasa pemrograman Python adalah string, number, list, tuple dan beberapa lainnya.

Operation

Operation adalah dasar bahasa pemrograman Python selanjutnya yang wajib dipelajari oleh coder yang ingin belajar bahasa ini. Fungsi dari salah satu dasar pemrograman Python satu ini adalah sebagai media yang dapat berperan untuk mengubah nilai menjadi nilai lain.

Operation pada pemrograman ini dapat berupa operator aritmatika, operator assignment dan beberapa lainnya. Pada dasar ini juga dapat digunakan untuk operasi aritmatika seperti penjumlahan, pengurangan, pembagian dan perkalian.

Looping

Looping adalah perintah yang berjalan beberapa kali dengan satu instruksi saja. Looping atau perulangan merupakan suatu instruksi yang diberikan pada Python agar dapat melakukan proses data, menampilkan data, menghitung data, dan beberapa instruksi khusus lain secara berulang.

Perintah Looping yang menjadi dasar bahasa pemrograman Python ini dapat berjalan dengan menggunakan beberapa fungsi seperti fungsi for dan while. Selain untuk perhitungan Looping juga dapat digunakan untuk visualisasi pada variable data secara serentak.

String

String dalam bahasa pemrograman sering disebut sebagai perkumpulan karakter yang dapat ditandai dengan tanda kutip tunggal yang mengelilinginya. Tidak hanya tanda kutip tunggal saja, ternyata string juga dapat ditandai dengan tanda kutip ganda bahkan juga dapat menggunakan tanda kutip tiga.

Variabel-variabel yang termasuk kategori string sendiri memiliki beberapa fungsi yaitu untuk mencari variable bagi frasa tertentu, digunakan sebagai media untuk memeriksa panjang pada variabel, serta digunakan juga sebagai media untuk memeriksa jumlah kata yang digunakan.

Demikianlah beberapa dasar bahasa pemrograman Python yang wajib dipelajari sebelum menggunakan Python secara profesional. Dasar-dasar pemrograman pada Python tersebut sangatlah penting dipelajari agar web developer menjadi mahir dan peka ketika terjadinya eror saat proses pengerjaan coding.

Sabtu, 11 Februari 2023

6 Bahasa Pemrograman Populer dan Banyak Digunakan

 Kebutuhan akan website atau software semakin hari kian meningkat. Keberadaaan website atau aplikasi dibuat oleh web developer yang berhubungan langsung dengan banyak bahasa pemrograman. Oleh karena itu simak ulasan mengenai 6 bahasa pemrograman yang banyak digunakan saat ini.

Python

                                                                                               

Python merupakan bahasa pemrograman tingkat tinggi dan sangat cocok dipelajari oleh pemula. Python banyak dipakai untuk aplikasi desktop, otomatisasi, data science, deep learning, machine learning serta komputasi saintifik. Bahasa ini termasuk nomor satu terpopuler berdasarkan data Stack Overflow

Kelebihan yang ditawarkan dari bahasa ini juga banyak mulai dari menyediakan open source, adanya GUI, kompatibel dengan Mac dan Windows serta  komunitas yang terus berkembang. Kekurangan dari bahasa ini adalah menggunakan banyak memori, tidak ideal untuk versi seluler dan bekerja lebih lambat.

C++

Bahasa  C++ adalah bahasa yang banyak digunakan dalam computer science. C++  digunakan oleh coder yang berpengalaman untuk memenuhi pemrograman OOP, generik serta imperatif. C++ menjadi bahasa pemrograman terpopuler keempat pada Januari 2022 berdasarkan Stack Overflow.

C++ banyak digunakan pada program komputer, sistem operasi, pengembangan aplikasi dan machine learning. Selain itu C++ juga memiliki beberapa kelebihan yaitu open source, serbaguna, kontrol menyeluruh, cepat dan canggih. Disisi lain bahasa ini tidak mempunyai banyak garbage collection.

JavaScript

JavaScript merupakan kategori selanjutnya yang digunakan pada pengembangan website dan cocok untuk pemula karena pembelajarannya tergolong mudah. Bahasa ini termasuk bahasa pemrograman terpopuler ketiga versi Stack Overflow.

Kelebihan dari JavaScript sendiri adalah open source, cocok dengan bahasa pemrograman lain dan bagus untuk pengguna website. Dibalik kelebihan pasti terdapat kekurangan, dimana JavaScript memiliki masalah keamanan karena performa lintas browser yang terkadang tidak stabil.

SQL

Bahasa pemrograman yang banyak digunakan berikutnya adalah SQL.SQL (Structured Query Language) adalah jenis bahasa yang erat kaitannya dengan data science dan komputasi statistic. Bahasa ini tergolong sebagai bahasa satu terbanyak digunakan oleh pekerja  berdasarkan statistic Stack Overflow.

SQL memiliki karakteristik yang cocok untuk pemula karena mudah dipelajari dan terkadang juga sulit, hal ini dikarenakan proses pembuatan fungsi advanced yang rumit. Bahasa ini digunakan untuk keperluan pengelolaan data base, business intelligence dan laporan penjualan.

PHP

PHP adalah bahasa dasar dari situs penyedia website gratis Wordpress. Jenis bahasa satu ini sangat mudah dipelajari dengan tingkat kesulitan dikhususkan bagi pemula. Bahasa ini banyak digunakan pada web development, program komputer dan juga pada program komputer.

Bahasa PHP memiliki beberapa kelebihan yaitu open source, PHP dengan versi tinggi akan bekerja lebih cepat, mendukung OOP dan ketersediaan komunitas. Selain itu bahasa pemrograman ini juga memiliki kekurangan dimana website dari hasil PHP akan lebih lambat daripada bahasa lain.

Go

Bahasa Go dibuat untuk mengembangkan API, GUI dan web. Bahasa ini mudah dipelajari dan digunakan juga pada machine learning, big data dan pemrograman sistem. Go merupakan bahasa pemrograman paling banyak diminati oleh web developer pelajar dan pekerja berdasarkan data Stack Overflow.

Go dapat digunakan dengan waktu eksekusi cepat, model konkurensi mudah, keamanan yang lebih terjaga dan tool analisis statis. Selain itu Go juga tidak mempunyai banyak fungsi generik.

Itulah beberapa bahasa pemrograman populer dan banyak digunakan berdasarkan fakta dan data yang ada. Keberagaman bahasa pemrograman tentunya akan membuat perkembangan digital semakin pesat kedepannya.

Selasa, 17 Agustus 2021

REST API Dengan Python | Berinteraksi Dengan Layanan Web

Pendahuluan

Apa itu REST API? Sebelum artikel ini dibuat saya sudah memberikan contoh pembuatan REST API pada Django yang meliputi pengertian dari REST API itu sendiri. Pada artikel ini penulis akan membuat program python yang bisa melakukan komunikasi pada sebuah web atau server yang memiliki REST API.

Penulis sengaja menyederhanakan tulisan ini dengan harapan mempermudah mempelajari struktur kode yang dibuat. Dibawah ini merupakan gambaran dari komunikasi yang bisa dilakukan dengan memakai REST API.

REST API

Persiapan

Beberapa persiapan yang harus dilakukan yakni:

#Python3

#Program REST API pada Django

#Pustaka requests

#Text editor

Saya telah membuat REST API sederhana di applikasi django yang bisa digunakan juga di manipulasi oleh siapapun. Bila kamu sudah memasang pustaka requests. Tetapi bila belum silahkan install melalui perintah pip.

Membaca Data Pada REST API

Saya hanya menggunakan pustaka requests untuk mengakses REST API, lalu menampilkanya dalam bentuk json.

import requests

url = "http:/127.0.0.1:8000/cart-items"

respon = requests.get(url)

cetak = respon.json

print(cetak)

Pada baris kedua dari contoh kode diatas merupakan url server yang menyediakan REST API. Ini bisa dikembangkan lagi bila server memiliki akses yang dibatasi oleh authority user dan password atau apikey.

Baris ketiga merupakan contoh penggunaan requests.get yang digunakan untuk mendapatkan data dari server.

Baris keempat untuk mengubah data yang diberikan oleh server menjadi tipe json yang biasanya digunakan untuk diolah kembali dalam tampilan pengguna. Ini juga bisa diganti menjadi tipe text saja dengan perintah respon.text.

Pada Program REST API Pada Django kita memiliki 4 attribut yakni product_name, product_price, product_quantity dan id yang otomatis diciptakan oleh django. Maka kita akan memasukan 3 attribut berikut nilainya dalam bentuk json. Kita membutuhkan pustaka json untuk mengubah attribut dan nilainya sehingga tidak akan terjadi error. Berikut ini merupakan contoh penggunaan dalam blok kodenya.

...

url="http://127.0.0.1:8000/cart-items/"

payload={

"product_name":"Coffee",

"product_price":"$1",

"product_quantity":"1000"

}

masukan = requests.post(url,json=payload)

print(masukan.text)

Program ini juga masih bisa dikembangkan lagi bila ada nilai attribut yang berbentuk file serta maksimal ukuran file yang akan dijadikan nilai.

Memperbarui Data Pada REST API

Pada kode blok ini kita menggunakan perintah request.patch untuk mengubah attribut product_quantity berdasarkan id yang digunakan. Dibawah ini saya akan mengubah nilai dari id 1 maka saya menggunakan url http://127.0.0.1:8000/update-item/1.

...

url="http://127.0.0.1:8000/update-item/1"

payload={"product_quantity":"0"}

perbarui = requests.patch(url, json=payload)

print(perbarui.text)

Bila tampil kamu mengeksekusi kode diatas maka nilai dari attribut product_quantity dari id 1 menjadi 0.

Menghapus Data Pada REST API

Pada kode blok ini saya menggunakan perintah request.delete untuk menghapus data berdasarkan id yang digunakan pada url.

...

url="http://127.0.0.1:8000/update-item/1"

hapus = requests.delete(url)

print(hapus.text)

Blok kode diatas akan menghapus data yang memiliki id 1. Kode ini juga bisa dikembangkan lagi untuk penghapusan beberapa id sekaligus.

Perintah tambahan pada pustaka requests yang penting, juga bisa digunakan pada applikasi yang sedang kamu kembangkan dengan memakai Session pada pustaka requests juga penggunaan perintah lainya pada HTTP request yakni head, option dan put bisa dilihat di dokumentasi ini.

Bila ingin melihat tutorial atau artikel tentang python klik disini.

Selasa, 03 Agustus 2021

CRUD Database Pyhton dan Sqlite3

Membuat data pada suatu program merupakan hal yang sering dilakukan, apalagi jika memang sangat dibutuhkan untuk bahan informasi program. Sehingga memudahkan dalam proses kerja.
Maka kita perlu membuat applikasi yang bisa berperan memanipulasi database. Ini merupakan dokumentasi menambahkan , mengsunting, menghapus dan mencari data pada database.
Software yang diperlukan untuk membuat program ini :
  • Python3
  • Sqlite3
  • Geany(Text Editor Lainya)
  • Console atau CMD(Command Prompt)
Silahkan buat database dari sqlite3 dengan sql ini:
sqlite3 testDB.db
CREATE TABLE COMPANY(ID integer primary key autoincrement not null,NAME text not null, AGE int not null , ADDRESS char(50), SALARY real);
Pada sql diatas akan menghasilkan file testDB.db untuk membuat database dengan tabel COMPANY. Silahkan cek filenya bila ada berarti berhasil.
Selanjutnya kita membuat program pyhon dengan nama inputdata.py yang isinya :
import sqlite3 #mengimport module sqlite3
conn = sqlite3.connect(‘testDB.db’) #membuat koneksi database
print (“Database connected”)
def entering(): # membuat fungsi entering
global naming,aging,addressing,salaries
naming = input(‘Name :’) # mengisi variabel naming
aging = input(‘Age :’) # mengisi variabel aging
addressing = input(‘Address :’) # mengisi variabel addressing
salaries = input(‘Salary :’) # mengisi variabel salaries
conn.execute(“INSERT INTO COMPANY ( NAME, AGE, ADDRESS, SALARY) values (?,?,?,? )”, (naming,aging,addressing,salaries,)); #memasukan data dengan sql ini
conn.commit()
print (“Enter data success!”)# mencetak informasi bila sukses
entering() #mengeksekusi fungsi entering
conn.close()

Kemudian eksekusi file tersebut menggunakan console atau comand prompt dengan mengetik python3 inputdata.py. Lalu lihat data tersebut dengan sql :
select * from COMPANY;


Di atas merupakan gambar consolenya.
Untuk melihatnya dengan program tersebut mari kita buat fungsi tambahan untuk melihat data yang sudah ada pada testDB.db. taruhlah kode ini sebelum def entering() :
def showdata() :
cursor = conn.execute(“SELECT ID, NAME, ADDRESS, SALARY from COMPANY”)
for row in cursor:
print (“ID = “,row[0])
print (“NAME = “,row[1])
print (“ADRRESS = “,row[2])
print (“SALARY = “,row[3],”\n”)
print (“+++++++++”);
Lalu panggil fungsi showdata dengan mengetik showdata() setelah entering()
Maka akan muncul tampilan seperti ini:

Bila sudah tinggal eksekusi file inputdata.py lagi. Bila berhasil maka setelah menyimpan data lalu menampilkanya dalam console tersebut. BIla ingin menambahkan data lagi maka tinggal eksekusi file itu lagi.

Untuk database lain hanya tinggal ganti variabel con. Selainya tidak ada y perlu diganti. Semoga dokumentasi ini bermanfaat.
.: GOOD LUCK :.

CRUD Database Python dan Sqlite3 Part 2


Artikel ini merupakan lanjutan dari artike sebelumnya yang menjelas kan tentang input data dan mennampilkan data. Pada Artikel ini saya membuat tiga buah file yakni Update.py, Delete.py dan Search.py. Yang masing-masing mempunyai fungsinya masing-masing sesuai dengan namanya.
Oke kita langsung ke tahap pembuatan file-filenya. File Search.py berisi kode:
import sqlite3
conn = sqlite3.connect(‘testDB.db’)
print (“database sukses terbuka”)
def search():
global srccolumn,searching
#default srccolumn
print(‘Search data table Company, if it leave blank will be searched by ID’)
srccolumn = input(‘Enter searching by column :’)
if srccolumn == ”:
srccolumn = ‘ID’
searching = str(input(‘Search :’))
cursor = conn.execute(“SELECT ID, NAME, ADDRESS, SALARY from COMPANY where ” + srccolumn +” like ‘”+ searching +”%’;”)
for row in cursor:
print (“ID = “,row[0])
print (“NAME = “,row[1])
print (“ADRRESS = “,row[2])
print (“SALARY = “,row[3],”\n”)
print (“Operasi sukses”);
search()
conn.close()
Ini merupakan pencarian dimana kita bisa menentukan atribut yang akan dicari seperti berapa salarynya atau alamatnya. Tetapi bila kita ingin mencarinya berdasarkan idnya maka kosongkan inputnya.
Selanjutnya mari kita buat file Delete.py yang berfungsi untuk menghapus data yang sudah tersimpan pada database.
#!/usr/bin/python
import sqlite3
conn = sqlite3.connect(‘testDB.db’)
print (“database sukses terbuka”);
def delete():
global ids
ids = str(input(‘Which id do you want to delete :’))
conn.execute(‘delete from COMPANY where id=’+ids)
conn.commit()
print (“Jumlah data terhapus :”, conn.total_changes)
cursor = conn.execute(“SELECT ID, NAME, ADDRESS, SALARY from COMPANY”)
for row in cursor:
print (“ID = “,row[0])
print (“NAME = “,row[1])
print (“ADRRESS = “,row[2])
print (“SALARY = “,row[3],”\n”)
delete()
Ini menghapus data berdasarkan id yang dimasukan. File ini belum ditambahkan konfirmasi unrtuk menghapus data tersebut.Bila ingin tambahkan konfirmasi penghapusan data tinggal tambah global variabel confirmation dan buat logika if kalau user memasukan Y atau y maka hapus data tersebut.
Selanjutnya kita membuat file Update.py untuk mensunting data yang sudah tersimpan.
import sqlite3
conn = sqlite3.connect(‘testDB.db’)
print (“database sukses terbuka”);
def update():
global ids, salaries
ids = str(input(‘Enter the ID that you want to change:’))
salaries = input(‘Enter salary to change:’)
conn.execute(“UPDATE COMPANY set SALARY =”+ salaries +” where ID=”+ ids +””)
conn.commit()
print (“Jumlah data terupdate :”, conn.total_changes)
cursor = conn.execute(“SELECT ID, NAME, ADDRESS, SALARY from COMPANY where ID=”+ids)
for row in cursor:
print (“ID = “,row[0])
print (“NAME = “,row[1])
print (“ADRRESS = “,row[2])
print (“SALARY = “,row[3],”\n”)
print (“Operasi sukses”);
update()
conn.close()
Pada file Update.py ini mensunting SALARY pada id yang dimasukan. FIle ini masih bisa dikembangkan sesuai dengan kebutuhan.
Note : Untuk pengguna database selain sqlite3 tinggal mengganti variabel conn.

Senin, 12 Juli 2021

Membuat Laporan Dalam File CSV Pada Django

Isi Konten

Pengertian Laporan

Bahan-bahan yang Diperlukan

Laporan dalam File CSV

Proses Pembuatan

Tips dan trik tambahan

Artikel ini menjelaskan cara pembuatan laporan dalam bentuk csv. Pada beberapa projek,laporan merupakan hal yang wajib ada. Apalagi kalau sudah pada tahap pengolahan data dan penganalisaan data untuk keperluan dokumentasi atau membuat target.

Dalam django kita memang sangatlah bisa merepresentsikan data tersebut dalam bentuk halaman web. Tetapi ada sebagian data yang harus benar-benar diolah dan dijadikan file csv atau pdf untuk keperluan dokumentasi maupun pem-backupan data.

Pengertian Laporan

Laporan adalah suatu bentuk penyampaian berita, keterangan, pemberitahuan ataupun pertanggung jawaban baik secara lisan maupun secara tertulis dari bawahan kepada atasan. Salah satu cara pelaksanaan komunikasi dari pihak yang satu kepada pihak yang lainnya.

Bahan-bahan yang Diperlukan

Django 3.2

Project Api

Console atau Command Prompt

TextEditor

Secangkir kopi atau teh atau coklat panas

Laporan dalam File CSV

CSV merupakan singkatan dari comma-separated value adalah file yang berbentuk text yang menggunakan koma untuk memisahkan nilai-nilainya. Setiap baris file biasanya adalah rekaman data.

File csv biasanya diolah kembali menggunakan excel yang merupakan pengolahan data dalam bentuk angka.

Bagaimana cara membuatnya pada django? Disini saya membuat dua cara yang mudah untuk membuatnya.

Proses Pembuatan

Pada proses ini saya menggunakan template django untuk membuat laporan ini, sebelumnya kita harus membuat project dan applikasi api yang akan kita buatkan menjadi laporan dalam bentuk csv. Setelah selesai membuatnya kita harus membuat

 suatu fungsi pada file views di folder api dengan menambahkan kode berikut.


....

from django.http import HttpResponse

from django.template import loader


@method_decorator(csrf_exempt, name='dispatch')


class ShoppingCart(View):

......



def csv_report(request):

    # Create the HttpResponse object with the appropriate CSV header.

    data=CartItem.objects.all()

    response = HttpResponse(

        content_type='text/csv',

        headers={'Content-Disposition': 'attachment; filename="somefilename.csv"'},

    )

    t = loader.get_template('template_csv.txt')

    c = {'data': data}

    response.write(t.render(c))

    return response

fungsi csv_report akan membuat file somefile.csv dan memuat template template_csv.txt yang akan memodifikasi tampilan laporan yang dibuat.

Bila sudah selesai memodifikasi file tersebut,kita akan mengubah file urls.py dengan menambahkan kode ini untuk digunakan pada url yang akan mendownload laporannya.

path ('csvreport/',views.csv_report,name='csvreport'),

Kemudian kita buat templatenya di folder templates dengan nama file template_csv.txt dengan isi filenya


Informasi Penjualan Produk


"Nama Produk","Harga","Qty"

{% for row in data %}"{{ row.product_name|addslashes }}", {{ row.product_price|addslashes }}, {{ row.product_quantity|addslashes }}

{% endfor %}

dibuat oleh yusuf abdulloh


Jalankan server django dengan perintah

python manage.py runserver

Buka browser kamu lalu pergi ke url localhost:8000/csvreport/

maka kamu akan melihat popup untuk mendownload file yang bernama somefile.csv. Downloadlah file tersebut lalu buka dengan applikasi excel maka tampilanya akan seperti ini. File somefile.csv menampilkan data yang ada pada tabel ChartItem di database api.

Tips dan trik tambahan

#Modifikasilah namafile csvmu dengan nama yang kamu inginlan tetapi biasanya menggunakan nama sesuai tanggal laporan tersebut dibuat.

#Ganti tampilan csv file dengan mengedit file template_csv.txt pada folder templates.

Semoga berhasil

Untuk melihat Daftar Isi Pemrograman Python lainya.

sumber wiki dan django

Rabu, 07 Juli 2021

Membuat REST API Pada Django


Sebelum kita membuat REST API pada Django Framework,baiknya mengetahui dulu pengertian dari REST API itu sendiri. Agar lebih mudah untuk memahami pembuatan dan tujuan project ini.


Pengertian REST API

REST (Representational State Transfer) Adalah sebuah arsitektur sederhana untuk membangun dan menghubungkan dengan layanan-layanan website. Biasanya ini ditampilkan ulang dalam bentuk JSON atau XML atau HTML yang bisa diakses,  dimodifikasi dan digunakan ulang oleh siapapun(devloper atau programmer).

API adalah singkatan dari Application Programming Interface. API adalah penerjemah komunikasi antara klien dengan server untuk menyederhanakan implementasi dan perbaikan software.Bisa diartikan juga sebagai sekumpulan perintah, fungsi, serta protokol yang dapat digunakan oleh programmer saat membangun perangkat lunak untuk sistem operasi tertentu. Biasanya menggunakan protokol standard HTTP tetapi untuk website atau blog interprise menggunakan HTTPS untuk melakukan operasi GET,POST dan PUT.

REST API memungkinkan para developer dan programmer dalam pengembangan applikasi yang berbasis data tergabung dengan applikasi yang berbeda dengan kebutuhan data yang sama. Seperti dalam pengembangan toko online yang membutuhkan API distributor atau pengirimnya sehingga pelanggan tidak pusing mencari jasa pengirimannya berikut harga dan perkiraan datang paket yang dibeli.Berikut ini cara membuat REST API sederhana yang bisa digunakan untuk semua orang.


Bahan Yang Digunakan

Python3.8

Django3.1

Console atau Command Prompt

Text Editor (Pycharm, Sublime, Notepad++, Vim atau lainya)


Proses Pembuatan Project

Mari kita buat suatu project untuk contoh kasus pembuatan keranjang pada toko online. Dimana keranjang ini bisa diisi oleh siapa saja, diganti ataupun dihapus isinya sesuai dengan keinginannya sendiri. Tetapi bila sudah selesai akan dipindahkan ke keranjang penjualan.

Pertama buat project dan applikasinya dengan menggunakan perintah


$ django-admin startproject project

$ cd project

$ python manage.py startapp api


Setelah mengeksekusi perintah-perintah diatas.Maka struktur project kita akan menjadi seperti ini

Rubahlah pengaturan pada file setting.py dalam folder project. Tambahkan daftar applikasi kita (api) pada baris INSTALLED_APPS.


INSTALLED_APPS = [

    ....

    'api',

]


Kemudian kita akan membuat databasenya pada file models.py di folder api dan menggantinya menjadi kode ini


from django.db import models

class CartItem(models.Model):

    product_name = models.CharField(max_length=200)

    product_price = models.FloatField()

    product_quantity = models.PositiveIntegerField()

    

Setelah memodifikasi file tersebut,kita harus menjalankan perintah


$ python manage.py makemigrations

$ python manage.py migrate


Bila berhasil maka kita akan msndapatkan notifikasi pembuatan tabel-tabel yang diperlukan pada applikasi kita melalui console atau command prompt.

Mari kita buat halaman administrator agar memudahkan dalam melihat perubahan data pada database di applikasi kita.Caranya cukup mudah yakni dengan mengganti isi file admin.py dengan kode dibawah ini


from django.contrib import admin

from .models import CartItem


admin.site.register(CartItem)


Daftarkan akun admin di halaman django admin melalui console atau command prompt dengan perintah


$ python manage.py createsuperuser


Lalu masukan nama, email dan passwordnya dengan benar.Untuk menjalankan applikasi kita jalankan perintah


$ python manage.py runserver


dengan mengakses url localhost:8000/admin maka akan tampil halaman login untuk masuk ke halaman sdministrasi django. Masukan nama dan password yang kita buat untuk akun admin tadi untuk melihat mengubah dan menghapus data di database applikasi kita.


Pembuatan REST API

Pertama kita akan menuliskan data pada keranjang. Sedangkan untuk yang lainya juga akan saya buat di satu artikel ini. Agar bisa langsung diterapkan pada project yang sedang dikerjakan. Operasi CRUD untuk REST API pada Django tambahan lainya yakni operasi Pencarian Data API dengan membuat fungsi-fungsi pada views yang digunakan untuk mengekseskusi perintah yang berkaitan dengan operasi-operasi yang ingin digunakan.

Mari kita membuat langkah pertama yakni menuliskan data pada keranjang.Dengan mengubah file views.py pada folder api dengan kode dibawah ini


from django.views import View

from django.http import JsonResponse

import json

from django.utils.decorators import method_decorator

from django.views.decorators.csrf import csrf_exempt

from .models import CartItem


@method_decorator(csrf_exempt, name='dispatch')

class ShoppingCart(View):

    def post(self, request):


        data = json.loads(request.body.decode("utf-8"))

        p_name = data.get('product_name')

        p_price = data.get('product_price')

        p_quantity = data.get('product_quantity')


        product_data = {

            'product_name': p_name,

            'product_price': p_price,

            'product_quantity': p_quantity,

        }


        cart_item = CartItem.objects.create(**product_data)


        data = {

            "message": f"New item added to Cart with id: {cart_item.id}"

        }

        return JsonResponse(data, status=201)

        

Ubahlah isi file urls.py pada folder project dengan kode berikut


from django.contrib import admin

from django.urls import path, include


urlpatterns = [

    path('admin/', admin.site.urls),

    path('', include('api_app.urls')),

]


Buatlah file urls.py pada folder api. Lalu ketiklah kode dibawah ini


from django.urls import path

from .views import ShoppingCart


urlpatterns = [

    path('cart-items/', ShoppingCart.as_view()),

]


Lalu jalankan server kita dengan kode


$ python manage.py runserver


Cara menuliskannya bisa dengan perintah curl di console atau command prompt.


$ curl -X POST -H "Content-Type: application/json" http://127.0.0.1:8000/cart-items/ -d "{\"product_name\":\"name\",\"product_price\":\"41\",\"product_quantity\":\"1\"}"


Bila kode yang kita buat benar maka akan muncul pemberitahuan di console atau command prompt seperti ini


{

    "message": "New item added to Cart with id: 1"

}


Atau bila mengkses url http://127.0.0.1:8000/admin/api_app/cartitem/, akan tampil daftar data yang ada.


B.Membaca Data(Read Data)

Langkah selanjutnya yakni membaca data yang ada pada database. Kita akan membuatnya fungsi untuk membaca sekaligus membuat hasil(bacaan) tersebut menjadi sebuah dictionary yang ditampilkan dalam bentuk JSON. Dengan menambahkan fungsi get() pada views.py


def get(self, request):

        items_count = CartItem.objects.count()

        items = CartItem.objects.all()


        items_data = []

        for item in items:

            items_data.append({

                'product_name': item.product_name,

                'product_price': item.product_price,

                'product_quantity': item.product_quantity,

            })


        data = {

            'items': items_data,

            'count': items_count,

        }


        return JsonResponse(data)


Mari kita coba dengan menggunakan di console atau command prompt dengan perintah ini


$ curl -X GET http://127.0.0.1:8000/cart-items/


Bila berhasil maka akan ada data dalam bentuk JSON pada console ata command prompt kita.


C.Memperbarui Data(Update Data)

Untuk memperbarui data, tentu saja harus ada data yang ingin diperbarui. Dimana data yang akan diperbarui akan ditentukan berdasarkan id yang dimiliki oleh data di database. Untuk melakukanya kita hanya perlu menggunakan 1 baris perintah pada console yakni


$ curl -X PATCH http://127.0.0.1:8000/update-item/1 -d "{\"product_quantity\":\"3\"}"


Tetapi sebelum menggunakan perintah diatas kita harus menambahkan fungsi patch() pada file views.py dan url pada file urls.py di folder api. Dibawah ini merupakan tambahan kode untuk file views.py.


@method_decorator(csrf_exempt, name='dispatch')

class ShoppingCartUpdate(View):


    def patch(self, request, item_id):

        data = json.loads(request.body.decode("utf-8"))

        item = CartItem.objects.get(id=item_id)

        item.product_quantity = data['product_quantity']

        item.save()


        data = {

            'message': f'Item {item_id} has been updated'

        }


        return JsonResponse(data)


Dan yang ini untuk urls.py. Tetapi baiknya mengimport fungsi ShoppingCartUpdate agar tidak terjadi error.

path('update-item/<int:item_id>', ShoppingCartUpdate.as_view()),


D.Menghapus Data(Delete Data)

Untuk penghapusan data hampir sama seperti fungsi patch. Dengan menambahkan fungsi delete pada file views.py.

def delete(self, request, item_id):
        item = CartItem.objects.get(id=item_id)
        item.delete()

        data = {
            'message': f'Item {item_id} has been deleted'
        }

        return JsonResponse(data)

Dengan demikian, menghapus data yang sesuai dengan id pada console dapat menggunakan perintah berikut ini

curl -X "DELETE" http://127.0.0.1:8000/update-item/1




Setelah selesai tutorial ini kamu akan mampu membuat RET API sendiri dan menggunakan data dari API pada console. Ini juga bisa dikembangkan kedalam template html. Agar memudahkan pengguna dalam menggunakan api website kita.
Berikut ini merupakan Daftar Isi Pemrograman Python

Senin, 05 Juli 2021

Membuat URL Cantik Di Django


Pada artikel ini saya akan membuat program Django yang mempunyai fitur url otomatis sesuai dengan judul dan bagus untuk seo (Search Engine Optimization). Dimana ini akan sangatlah penting bagi website yang digunakan untuk mengingat alamat dengan judulnya.

Kita hanya perlu modul slugify yang sudah ada dalam Django framework, kita tinggal mengimport modulnya untuk dipakai. Dengan demikian kita tidak perlu repot menyeting url sendiri karena sudah diatur otomatis sesuai judul artikel yang dibuat.

Contohnya saya membuat artikel yang berjudul Slugify URL Pada Django maka urlnya akan otomatis menjadi www.yusufabdulloh.my.id/slugify-url-pada-django. Asik bukan, dengan menyimpan artikel dengan judul itu maka akan otomatis membuat urlnya cantik dan cukup bagus untuk keperluan seo bukan. Sebelum itu kita harus mengetahui apa itu url yang akan kita buat.


Pengertian URL

URL (Uniform Resource Locator) adalah rangkaian karakter menurut suatu format standar tertentu, yang digunakan untuk menunjukkan alamat suatu sumber seperti dokumen dan gambar di Internet. URL menunjukkan sumber daya Internet atau alamat sebuah halaman web (homepage) yaitu halaman suatu dokumen atau program yang ingin ditampilkan atau digunakan.Secara umum perlu memasukkan tiga informasi untuk menuju ke alamat tertentu, yaitu Protokol, Alamat Server dan Path File.sumber Wikipedia


Bahan Yang Digunakan Pada Project Ini

1.Python3.8

2.Django3.1

3.Text Editor(Pycharm atau Notepad++ atau Sublime atau Vim atau yang lainya)

4.command prompt/console

Sebelum itu pastikan bahwa django sudah terinstall pada perangkat yang digunakan menggunakan perintah pip list pada command prompt atau console. Bila sudah ada Django maka kita sudah siap membuat project Django.


Pembuatan Project Django

Pertama mari kita buat project di django. Buka console kita lalu ketik perintah ini


$ mkdir django_slugify && cd django_slugify

$ pipenv install django

$ pipenv shell

$ django-admin startproject config .

$ python manage.py startapp posts


Rubahlah file models.py pada file posts jadi seperti ini


from django.db import models

from django.utils.text import slugify

class Post(models.Model):

        title = models.CharField(max_length=255)

        slug = models.SlugField(max_length=255, unique=True)

        def save(self, *args, **kwargs):

                if not self.slug:

                        self.slug = slugify(self.title)

                super(Post, self).save(*args, **kwargs)

        def __str__(self):

                return self.title

Kemudian mari kita rubah pengaturan pada file setting.py pada folder django_slugify untuk menambahkan applikasi posts.


INSTALLED_APPS = [

    ...

    'posts.apps.PostsConfig',

]


Untuk melakukan perubahan pada database mari kita jalankan 2 perintah dibawah ini


$ python manage.py makemigrations

$ python manage.py migrate


kemudian tambahkan url pada urls.py file pada folder django_slugify dengan kode dibawah ini agar bisa diakses oleh siapapun.

from posts import views

urlpatterns = [

    path('<slug:slug>/', views.DetailView.as_view(), name='post_detail'),

]


untuk mengeceknya mari kita buat 1 entry pada database dengan menggunakan perintah ini


$ python manage.py shell


from posts.models import Post

post = Post.objects.create(title='Slugify Url pada Django')

post.slug

Bila berhasil maka akan tampil halaman sesuai dengan isi dari file views.py pada folder posts. Dimana isi file views.py seperti ini.


from django.views import generic

from .models import Post

class DetailView(generic.DetailView):

model = Post

template_name= 'details.html'

Jalankanlah applikasimu dengan perintah "python manage.py  runserver", bila berhasil maka kita akan diarahkan ke template detail.html ketika mengakses url localhost:8000/slugify-url-pada-django. Jika tidak berhasil maka akan ada error.

Untuk melihat Daftar Isi Pemrograman Python

Minggu, 04 Juli 2021

Python OOP(Object Oriented Programming)

Daftar Isi

Definisi OOP

Class dan Object

Prinsip-prinsip OOP (Object Oriented Programming)

Magic Methods dan Operator Overloading

Object Lifecycle

Menyembunyikan Data

Class Method dan Static Methods

Properties


Definisi OOP

Object Oriented Programming(OOP) merupakan hal yang wajib dipahami oleh setiap programmer dalam bahasa yang ia ingin kuasai. Dengan kata lain OOP merupakan pondasi dasar dalam setiap bahasa pemrogramman level tinggi. Pengertian OOP itu sendiri yakni pemrograman yang berorientasi pada object.


Class dan Object

Object sendiri diciptakan oleh class yang merupakan poin vokal dari OOP.Class menggambarkan jadi apa sebuah objek nantinya, tetapi terpisah oleh object itu sendiri. Class juga menjadi blueprint, gambaran dan pengertian sebuah object. Kita juga bisa menciptakan banyak object dengan satu class.


Prinsip-prinsip OOP(Object Oriented Programming)

4 Prinsip dasar Object Oriented Programmingadalah Encapsulation, Abstaction, Inheritance dan Polymorphism.

Kata-kata ini terkadang merupakan kata yang menakutkan yang didengar oleh junior programmer.

Encapsulation

Encapsulation diarsipkan ketika setiap object menjaga mode privatnya didalam sebuah class. Object lainya tidak bisa mengaksenya. Object ini bisa dipanggil dimanapun dengan fungsi publik atau method.

Sebagai contoh sebuah anjing yang memiliki variabel privat yakni mood, lapar dan energi. Dan memiliki method privat bark(). Apa yang bisa kita akses dari publik adalah method publiknya yakni tidur(), main() dan makan().

Abstaction

Abstaction adalah sebuah konsep yang bertujuan untuk mempermudah masalah.Dalam desain berorientasi object yang ada di program besar. Tentu sangatlah komplek dan banyak logika yang digunakan dalam kode yang dibangun. Tetapi dengan OOP ini kita bisa menyederhanakan penggunaanya dalam kode yang telah dibuat.

Sebagai contoh yang nyata bila kita memiliki remote tv yang memiliki tombol-tombol seperti tombol power, tombol volume dan tombol chanel. Kita hanya perlu memencetnya dan tidak perlu memikirkan bagaimana signal remote itu memberikan perintah ke tv melalui penerima signal yang ada pada tv. Atau pada mesin kopi yang perlu kita lakukan hanyalah memencet tombol dan kopipun tersedia.

Inheritance

Inheritance bisa dibilang dalam bahasa indonesia yakni turunan. Dimana ada yang menjadi parent class dan child class. Ini merupakan solusi dimana kita bisa menggunakan object yang sama dalam class yang lebih spesifik lagi(child class).Object yang ada di parent class pasti dimiliki oleh child class.

Sebagai contoh kita memiliki parent class berupa manusia, class mahasiswa dan dosen yang merupakan child class dari parent class manusia. class manusia yang memiliki variabel nama dan biodata. Class mahasiswa memiliki variabel yang ada pada class manusia, jurusan, kelas dan peringkat. Sedangkan class dosen memiliki semua variabel dari class manusia, jabatan dan pelajaran.

Polymorphism

Polymorphism memiliki arti banyak bentuk dalam satu wadah. Polymorphism memberikan jalan untuk menggunakan class lainya seperti class parentnya sendiri sehingga tidak perlu memikirkan lagi tentang tipe campuran dari class-class yang ada.

Contohnya pada sebuah class bangun ruang yakni memiliki bebrapa child class pilihan yakni bola, balok dan box.Semua  child class memiliki perlakuan dan object yang sama. lalu dengan parent class ini kita bisa menghitung keliling, volume dan luas menggunakan method yang ada di parent class.

Dengan pemahaman ini pasti kita bisa membuat program yang rumit dengan interface yang mudah digunakan ulang seperti pada framework dan programing lain yang berbasiskan object.


Magic Method dan Operator Overloading

Magic Method adalah method khusus yang memiliki dua underscore di depan dan belakang namanya sendiri.Magic Method sering juga disebut dunders.

Pada sebuah class magic method yang sering digunakan yakni __init__ yang biasanya disebut constructor. Operator Overloading berarti menyamakan operator-operator untuk class-class buatan yang mengizinkan adanya operator-operator seperti +,-,/,* dan sebagainya untuk digunakan oleh class itu.

Magic method yang lainya yakni

__add__ untuk operasi matematika penambahan

__sub__ untuk operasi matematika pengurangan

__mul__ untuk operasi matemaitka perkalian

__truediv__ untuk operasi matematika pembagian

__floordiv__ untuk operasi matematika akar

__mod__ untuk modular

__pow__ untuk operasi matematika pangkat

__and__ untuk operasi matematika &

__or__ untuk operasi matematika |

__xor__ untuk operasi matematika ^

__lt__ untuk perbandingan <

__le__ untuk perbandingan <=

__eq__ untuk perbandingan yang sama

__ne__ untuk perbansingan yang tidak sama

__gt__ untuk perbandingan >

__ge__ untuk perbandingan >=

__len__ digunakan seperti method len()

__getitem__ digunakan untuk mendapatkan nilai dari index

__setitem__ digunakan untuk mengidentifikasi/menambahkan nilai dari index

__delitem__ digunakan untuk menghapus nilai dari index

__iter__ digunakan untuk membuat iterasi atau array diatas object(untuk penggunaan perulangan/loop)

__contains__ digunakan seperti argumen in

contoh penggunaan dalam bentuk kode


class Vektor3D:

 def __init__(self,a ,b):

  self.a = a

  self.b = b

 def __add__(self, other):

  return Vektor3D(self.a + other.a, self.b + other.b)

satu=Vektor3D(5,6)

dua=Vektor3D(2,3)

hasil= satu+dua

print(hasil.a)

print(hasil.b)


Object Lifecycle

Lifecycle dari sebuah object yakni dimulai dari pembuatan,manipulasi, dan pemusnahan. Membuat object berarti menempatkan memori untuk inisiasi(__init__). Mamanipulasi object yakni mengganti nilai (dan)atau tipe dari object. Pemusnahan object bisa dilakukan dengan del instance atau memakai __del__.Dengan memusnahkan object maka akan memberi ruang kosong dari object yang telah dihapus.


Menyembunyikan Data

Ini merupakan implementasi dari Encapsulation dari OOP yang dimana kita menggunakan satu underscore didepan object untuk menyembunyikanya dari kode luar.Sehingga bisa diakses oleh kode external dengan menggunakan magic method __repr__ untuk merepresentasikan instansi string.


class Antri:

def __init__(self,konten):

self._listtersembunyi = list(konten)


def push(self,nilai):

self._listtersembunyi.insert(0,nilai)

def pop(self):

return self._listtersembunyi.pop(-1)

def __repr__(self):

return "Antrian ({})".format(self._listtersembunyi)


antri = Antri([1,2,3])

print(antri)

antri.push(0)

print(antri)

antri.pop()

print(antri)

print(antri._listtersembunyi)


Dengan menggunakan 2 underscore sebelum namanya akan membuat method yang benar-benar privat.Tetapi method ini bisa diakses dengan nama yang berbeda dengan menggunakan method __privatemethod dari class yang disembunyikan


class Keranjang:

__telur=7

def print_telur(self):

print(self.__telur)

K=Keranjang()

K.print_telur()

print(K._Keranjang__telur)

print(K.__telur)


Class Method dan Static Method

Class Method adalah method yang dipanggil oleh sebuah class yang di identitaskan oleh cls parameter di method.Calss method biasanya ditandai oleh classmethod decorator.

contoh penggunaanya:


class Persegi:

def __init__(self, panjang, lebar):

self.panjang = panjang

self.lebar = lebar

def hitungluas(self):

return self.panjang * self.lebar

@classmethod

def persegi_baru(cls, sisi):

return cls(sisi, sisi)


persegi = Persegi.persegi_baru(6)

print(persegi.hitungluas())

Static Method hampir sama dengan Class Method tetapi Static Method tidak menerima argumen tambahan lainya. Dan biasanya menggunakan staticmethod decorator untuk penggunaanya.

contohnya:

class Uduk:

def __init__(self, lauk):

self.lauk = lauk

@staticmethod

def validasi_tambahan(tambahan):

if tambahan == "mangga":

raise ValueError("Tidak mungkin mangga!")

else:

return True


bahan = ["telur", "oreg", "mangga"]

if all(Uduk.validasi_tambahan(i) for i in bahan):

uduk = Uduk(bahan)

Properties

Properties  sebuah jalan akses untuk mengkostumisasi atribut-atribut instance.dan biasanya menggunakan propertis decorator sebelum methodnya.

class Uduk:


    def __init__(self, lauk):


        self.lauk = lauk


        self._sambal_allowed = False




    @property


    def sambal_allowed(self):


        return self._sambal_allowed




    @sambal_allowed.setter


    def sambal_allowed(self, nilai):


        if nilai:


            password = input("Enter the password: ")


            if password == "pedas":


                self._sambal_allowed = nilai


            else:


                raise ValueError("Wah!Gak boleh ditambahkan sambal!")




uduk = Uduk(["telur", "mie"])


print(uduk.sambal_allowed)


uduk.sambal_allowed = True


print(uduk.sambal_allowed)


Untuk melihat Daftar Isi Pemrograman Python

Sabtu, 26 Juni 2021

Pustaka Python Itertools

Isi Konten

Pendahuluan dan Pengertian

1.Infinite iteratur

2.Terminating iteratur

3.Combinatoric iteratur

Tabel Penggunaan Modul-modul Pada Itertools


Pendahuluan dan Pengertian

Pustaka ini sangat penting untuk mengelolaan memori pada saat penggunaan di iteratur  pembuatan blok yang terinspirasi oleh constructs dari APL, HASKEL dan SML. Pustaka ini juga sudah ada pada python karena merupakan pustaka dasar sehingga kita tinggal mengimportnya untuk memakainya dalam pembuatan applikasi yang kita garap.

import itertools as it

Biasanya itertools digunakan untuk pembuatan proses

1.Infinite Iteratur

2.Terminating Iteratur

3.Combinatoric Iteratur


1.Infinite Iteratur

Bila kita ingin menggunakan iteratur infinitif dengan perulangan elemen iteratur atau putaran elemen iteratur kita bisa menggunakan fungsi fungsi berikut ini.

Count

membuat infinite iteratur dengan jarak tertentu.

contoh pengguanaan dalam kode


import itertools as it

hitung = it.count(start=0, step=2)

for i in hitung:

print(i)

hasilnya akan menjadi seperti ini

2

4

6

8

10

12

..


Cycle

Membuat infinite iteratur dengan mengulang kembali dari awal elemen iteratur yang pertama setelah akhir iteratur.

contoh dalam penggunaan kodenya.


import itertools as it

putaran = it.cycle('Yusuf')

for i in putaran:

 print(i)

hasilnya akan terlihat seperti ini

Y

u

s

u

f

Y

u

s

u

..


Repeat

mengulangi iteratur atau item atau bisa juga array


import itertools as it

huruf="yusuf"

kali=5

ulangan =it.repeat(huruf,kali)

for i in ulangan:

print(i)

2.Terminating Iteratur

fungsi ini memungkinkan kita menggunakan beberapa iteratur dalam satu tanda kurung, atau ketika kita memiliki beberapa fungsi dan ingin menggunakannya dalam satu iteratur dan menghapus beberapa elemen yang tidak diinginkan dalam beberapa aksi dengan beberapa iteratur. Fungsi yang bisa kita gunakan yakni Chain,Drop While, Take While, Tee.

Contoh penggunaan dalam kodenya

import itertools as it

print("penggunaan chain")

rantai = it.chain([1,0,5],['Y','s','f'],['sudah'])

for i in rantai:

 print(i)


print("penggunaan groupby")

iteratur="AABBBGGGTTTUUUAAAHHH"

pergrup=it.groupby(iteratur)

for key, group in pergrup:

 print('Key:',key)

 print('Group: ',list(group))


3.Combinatoric Iteratur

Fungsi yang biasa dipakai yakni permutations dan combinations.


import itertools as it

print("penggunaan permutasi dan kombinasi")

iteratur="YSF"

permutasi=it.permutations(iteratur)

for a in permutasi:

print(a)


iteratur2="IND"

kombinasi=it.combinations(iteratur2,2)

for b in kombinasi:

print(b)

Tabel Fungsi-fungsi Pada itertools

IteraturArgumenContoh
count()start,[step]count(10)
cycle()pcycle("ITERTOOLS")
repeat()elem[,n]repeat(1,9)
accumulate()p[,func]accumulate([2,3,4,5,6)
chain()p,qcahin('EFG','HIJ')
cahin.from_iterable()iterablechain.from_iterable(['E,F,G'],['A,B,C'])
compress()data,selectorscompress('EFGHIJK','1,0,0,1,0,1,1')
dropwhile()pred,seqdropwhile(lambda x: x<5,[1,3,6,3,1])
filterfalse()pred,seqfilterfalse(lambda x: x%2,range(10))
islice()seq[start,] stop[,step]islice("EFGHIJKL",2,None)
starmap()func,seqstarmap(pow,[(2,5),(3,9),(10,2)])
tee()it,n
zip_longest()p,q,..zip_longest("EFGHIJK","xy",fillvalue="-")
product()p,q,..[repeat=1]product("EFGHI",repeat=2)
permutations()p[,r]permutations("EFGHIJ",2)
combinations()p,rcombinations("EFGHIJ",2)
combinations_with_replacement()p,rcombinations_with_replacement("EFGHIJ",2)

Referensi Website python.org dan medium.com

Saya harap dengan adanya artikel ini bisa membantu para programmer dalam pembuatan applikasi dan membuat pemahaman lebih tentang itertools. Lihat Daftar Isi Pemrograman Python

Minggu, 20 Juni 2021

Functional Programming(Fungsi Pure,Impure, lambda)

Membuat fungsi pada python tentu sudah kamu ketahui bila kamu sudah membaca artikel sebelumnya. Tetapi untuk artikel-artikel selanjutnya akan membahas lebih mendalam tentang fungsi.Dengan begitu harapannya fungsi dapat dimengerti secara lebih detail sehingga digunakan pada program dan alur yang tepat.

Functional Programming

Functional Programming adalah sebuah gaya pemrograman yang (memiliki nama yang menyarankan) didasarkan oleh isi fungsi itu. Kunci dari sebuah functional programming yakni terdapat apada High-order fungtion alias fungsi yang berada paling (atau di) atas. Sebagai contoh

def lakukan_duakali(func,arg):

 return func(func(arg))

 

def tambah_lima(x):

 return x+5

 

print(lakukan_duakali(tambah_lima,10))

Pure Function dan Impure Function

Pure Function tidak memiliki efek lainya, dan mengembalikan nilai hanya bersasarkan argumenya. Keuntungan pure function yakni lebih efisien dan mudah untuk dites atau digunakan. Sedangkan kerugiannya bila menginput dan menghasilkan hasil yang sederhana akan lebih mudah tetapi bila program yang rumit maka kita akan sulot untuk menuliskanya dan memilih menggunakan masukan dan keluaran yang sederhana.

contoh pure function

def pure(x,y):

 temp = x+2*y

 return temp / (2*x+y)

 

contoh impure function

array2={}


def impure(arg):

 array2.append(arg)


fungsi impure karena array2 akan berubah menurut seperti perubahanya.

Fungsi lambda

lambdas funtion adalah fungsi anonim yang biasanya diikuti oleh daftar argumen-argumen, sebuah titik dua, dan ekspresi untuk mengevaluasi dan mengembalikan nilai. Fungsi lambda didapat dari lambda calculus yang merupakan sebuah komputasi model oleh Alonzo Church.

Fungsi lambda tidak sekuat fungsi yang bernama. Biasanya digunakan pada satu baris dan untuk menyamakan ekspresi yang digunakan.Seperti kode dibawah ini

#fungsi yang bernama

def polinomer(x):

 return x**2+5*x+4

print(polinomer(-4))


#fungsi lambdanya

print((lambda x:x**2+5*x+4)(-4))


fungsi lambda juga bisa digunakan untuk membuat sebuah variabel.Sebagai contoh

kwartet = lambda x:x*4

print(kwartet(5))

Diatas merupakan fungsi-fungsi yang biasa digunakan dalam algoritma matematika. Ini merupakan fundamental dalam program python. Saya berharap tulisan ini bisa menjelaskan sesingkat-singkatnya apa itu fungsional programming yang berisi pure, impure function dan lambda.

Selain itu judul selanjutnya yakni penggunaan pustaka itertools dalam python.

Jika kamu ingin melihat Daftar Isi Pemrogram Python

Minggu, 06 Juni 2021

Tupel dan Fungsi Python

Tupel Python

Tupel adalah kumpulan data sama seperti array hanya saja tupel sifatnya tetap alias tidak bisa diganti. Tupel dibuat dengan tanda kurung.

Peliharaan=("ayam","domba","sapi",)

print(Peliharaan[0])

Peliharaan[0]="ular" # bila menambahkan kode disamping maka akan terjadi error

Tupel juga bisa dibuat tanpa menggunakan tanda kurung.

Warna="merah","kuning","hijau"

print(Warna[0])

Membungkus Tupel dan Membuka Tupel


Pembungkusan tupel juga digunakan pada objek yang sama jumlah objeknya.bila ingin membukanya maka tinggal menyebutkan nama objectnya.

(h1,h2,h3)= Peliharaan

Kita juga bisa menggabungkanya dengan cara seperti ini.

(h1,h2,h3)=("ayam","domba","sapi")

kita juga bisa menukar dua variabel dengan nilai yang berbeda. tanpa menggunakan vatiabel lain.

h1="ayam"

h2="domba"

h1,h2

h1,h2=h2,h1#kode ini akan menukar nilai kedua variabel seperti sihir.

Fungsi Python

Ingatkah kalian dimana kita belajar matimatika tentang fungsi seperti f=x(y,z).Hasil f yakni operasi x yang digunakan pada y dan z.

Fungsi pada pemrograman yakni sebuah blok kode yang digunakan untuk mengerjakan tugas atau tugas-tugas dalm grup yang spesifik.Seperti fungsi untuk masukan, proses dan keluar.


Membuat dan Memanggil fungsi

def <nama_fungsi>([<parameter>]):

    <pernyataan>


def kode untuk membuat fungsi di Python
nama_fungsi untuk menamai sebuah fungsi
parameter untuk menggunakan parameter di fungsi bisa juga dikosongkan apabila tidak ada yang digunakan diluar blok kode fungsinya
pernyataan merupakan blok kode python

Memanggil fungsinya dengan menggunakan nama fungsinya diikuti tanda kurung.Sebagai contoh

def contoh():

    print("kalimat ini dicetak dari fungsi contoh")

contoh()


def tambah(x,y):

    print(x+y)

tambah(5,10)

Berikut ini fungsi yang sering digunakan pada String

Fungsi Pada String

join untuk menggabungkan beberapa string alias kata.

startswitch memeriksa kata pertama dalam suatu kalimat.

endswitch memeriksa kata terkhir dalam suatu kalimat.

lower menjadikan huruf kapital sebuah kata atau kalimat

upper menjadikan huruf kecil sebuah kata aktau kalimat

split memisahkan kata demi kata

Fungsi Pada Nomer

min untuk menemukan nilai teekecil dari sekelompok nilai

max untuk menemukan nilai terbesar dari sekelompok nilai

round membulatkan nilai

sum mejumlahkan beberapa nilai sekaligus

Fungsi Pada Array

all mengembalikan nilai True atau False dari semua array yang dibandingkan

any mengembalikan sebagian nilai True atau False dari array yang ada

Lihat Daftar Isi Pemrograman Python

Jumat, 04 Juni 2021

None Dan Dictionary Pada Python

None

None merupakan tipe data yang mirip seperti empty atau null pada bahasa  pemrograman lainya. None bila di konversikan kedalam tipe boolean maka akan menghasilkan nilai False.Bila langsung ditampilkan kedalam console python maka hasilnya kosong alias tidak ada.

Menarik bukan, selain itu None digunakan juga pada fungsi maupun nilai yang tidak mengembalikan nilai apapun.


#fungsi kosong

def kosong():

 print ("hello")

kosong()


#nilai kosong

value=print()

if value=None:

 print(1)

else:

 print(0)


Contoh fungsi diatas merupakan penggunaan None juga.

Dictionaries

Dictionaries merupakan struktur-struktur data digunakan untuk kunci peta arbitary dengan nilainya.Sifat dictionary yakni tidak bisa diduplikasi tetapi bisa dirubah.Type datanya yakni <class 'dict'> bila kita mengeceknya menggunakan fungsi type().

Nilai dari Dictionary sendiri yakni bisa berupa String, int, boolean, dan juga koleksi data.

Dictionaries ={

  "merk": "Handphone",

  "makanan": False,

  "ditemukan": 1964,

  "warna": ["hitam", "kuning", "merah"]

}

Perbedaan pada python 3.7 dan 3.6(versi lamanya) yakni dictionaries dipesan dan pada yang lama tidak dipesan.

Maka dari itu kita harus bisa menggunakan tipe koleksi data dengan bijak supaya memperaman dan lebih effisien dalam membuat sebuah program.Dibawah ini merupakan koleksi tipe data pada python.

List = tipe koleksi data yang bisa dipesan, diduplikat dan diganti nilainya.

Tuple = tipe koleksi data yang bisa dipesan dan diduplikat tetapi tisak bisa diganti.

Set = tipe koleksi data yang tidak bisa dipesan, diduplikasi maupun diindex.

dictionaries = tipe koleksi data yang tida dipesan maupun diduplikasi tetapi bisa diganti.

Ini merupakan contoh dari pembuatan dictionaries dan penggunaanya dalam suatu program

orang={}

type (orang)

orang['nama']='Sudirman'

orang ['umur']='55'

orang ['pasangan']='Fatimah'

orang ['anak']=['komeng','kadir','sulhan']

orang ['peliharaan']=[{'kucing':'memeng','domba':'embe'}]

print(orang)

diatas merupakan contoh pembuatan dan penginisiasian dictionaries orang.

untuk mengganti valuenya

orang ['umur']='56'

untuk mengakses item dengan

print (orang.get ('nama'))

untuk melihat isi nilainya dan kuncinya dengan format tuple

list (orang.items ())

list (orang.keys ())

untuk memperbarui nilai dan kunci dari dictionaries

alamat={'umur':'58','kota':'Purwakarta','kodepos':'41181'}

orang.update (alamat)

Untuk menghapus dictionaries yakni

orang.clear()

Lihat Daftar Isi Pemrograman Python

Selasa, 01 Juni 2021

Membuat Membuka Membaca Menulis Menghapus File Di Python

Berikut ini contoh penggunaan kode-kode pada bahasa python yang biasa digunakan yakni open untuk membuka file, close untuk menutup file, read untuk membaca file,readlines untuk membaca file perbaris dan write untuk menuliskan atau mengubah isi file.

file.py

Hal lain yang mesti diperhatikan dalam penggunaan kode-kode untuk file yakni tempat file yang akan dibaca itu satu payh sama dalam kode python yang dibuat. Bila tidak maka file yang akan dibuka atau dimodifikasi maka akan terjadi error.

Contoh dalam suatu file yakni

Petunjuk="""


PROGRAM BACA UPDATE FILE


Program ini dari bahasa python


Dibuat untuk mengenal penggunaaan dengan praktek.


Sehingga mudah dimengerti


?============================?


|| Masukan perintah               


|| baca => untuk membaca file      


|| update => untuk mengganti isi file 


|| exit => untuk keluar             


?============================?


"""


print (Petunjuk)


perintah=""


while (perintah != "exit"):


 perintah=input ("Apa yang ingin dilakukan? \n")


 if (perintah=="baca"):


  try:


   file=open ("textfile.txt","r")


   print ("================")


   print(file.read ())


   print ("================")


  finally:


   file.close ()




 elif (perintah=="update"):


  try:


   file=open ("textfile.txt","w")


   tambah=str (input ())


   file.write (tambah)


   print ("berhasil diganti")


  finally:


   file.close ()




Kode diatas merupakan contoh penggunaan yang cukup sederhana untuk membaca dan mengganti isi dari suatu file. Bila program ini dijalankan maka akan terlihat seperti ini

File textfile.txt ini bisa dibuat juga dengan perintah update pada program tersebut yang akan menciptakan file textfile.txt otomatis.

Pada saat menggunakan kode read dan write kita harus membuka filenya terlebih dulu dengan kode open setelah itu kita mesti meakhiri membaca atau menulis filenya dengan menutupnya close.

Kita juga bisa menggunakan argumen kesua dari kode open untuk memberikan perintah yang khusus.

"r" = membuka mode membaca biasa

"w" = membuka mode menulis atau menulis ulang

"a" = membuka mode menambahkan isi file pada akhir isi file

"b" = membuka mode membaca dalam bentuk biner yang biasanya digunakan untuk file dalam bentuk suara maupun gambar

Kita juga bisa menggunakan + pada argumen kedua "r+" untuk menambahkan akses membaca dan menulis file.Pengembangan dari kode ini bahkan bisa membuat, menghapus isi dan menambahkan isi file textfile.txt.

Selamat mencoba yah.

Lihat Daftar Isi Pemrograman Python