Tampilkan postingan dengan label pustaka. Tampilkan semua postingan
Tampilkan postingan dengan label pustaka. Tampilkan semua postingan

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.

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