String, merupakan tipe data yang populer bin ajaib karena sering digunakan dan dapat dikonversikan ke mana saja.

Menginisialisasi string pada python menggunakan tanda kutip (tunggal atau ganda). Berikut contoh sederhana dari String.

print('Ini String')
print("Ini Juga String")

Menginisialisasi Variable String


Banyak cara yang bisa digunakan untuk menginisialisasi data string pada variabel. Contoh sederhanya seperti ini.

var1 = "AnbiDev"
var2 = 'Atas Nama Bangsa Indonesia'
print(var1)
print(var2)

Lalu kamu juga dapat memasukkan quote didalam string seperti berikut ini.

var1 = "'AnbiDev'"
var2 = '"Atas Nama Bangsa Indonesia"'
print(var1)
print(var2)

Variable string juga dapat menginisialisasi menggunakan triple quotes.

var1 = """
Ini Line Pertama
Ini Line Kedua
Ini Line Ketiga
"""
var2 = '''
Ini Line Pertama
Ini Line Kedua
Ini Line Ketiga
'''

print(var1)
print(var2)

String juga bisa menggunakan beberapa operator spesial seperti * dan +.

var1 = "adexe"
var2 = "desi"
var3 = var1 + var2
print(var3) # Output : "adexedesi"

var4 = "ade"
var5 = var4 * 3
print(var5) # Output : "adeadeade"

String Adalah Array


Dalam python, String juga dapat bersifat sebagai array. String dalam python adalah bytes array yang mempresentasikan unicode char.

Python tidak punya tipe data char, sehingga char pada python diganti dengan string dengan panjang 1 karakter.

untuk mengakses elemen pada string menggunakan [] (brackets).

INGAT : indexing array dimulai dari 0 bukan 1

var = "anbidev"
print(var[0]) # Output : "a"
print(var[3]) # Output : "i"

Slicing

Terdapat juga beberapa cara untuk mengambil beberapa karakter atau range karakter dari string (Slicing).


var = "anbidev"

print(var[0:3]) # Output : "anbi"
print(var[2:5]) # Output : "bide"

# Slice dari titik yang ditentukan ke karakter terakhir
print(var[3:]) # Output : "bidev"

# Slice dari titik yang ditentukan ke karakter pertama
print(var[:4]) # Output : "anbid"

Negative Slicing

Kamu juga dapat menggunakan Negative Indexing untuk mengakses array dari posisi terakhir. Biasanya cara ini digunakan untuk kasus - kasus tertentu. Seperti mengambil karakter terakhir dari sebuah string.

var = "anbidev"
print(var[-1]) # Output : 'v'

var = "anbidev"
print(var[-5:-2]) # Output : 'bid'

-5:-2 berarti posisi ke lima dari akhir ke posisi ke dua dari akhir


Cek String

Terdapat keyword yang bisa digunakan untuk mengecek sebuah string mengandung karakter tertentu, yaitu in.

Misal saya ingin mengetahui apakah di kalimat string ini, terdapat kata AnbiDev didalamnya.

var = "Kunjungi AnbiDev untuk belajar python "
result = "AnbiDev" in var

print(result) # Output : True

Lalu saya ingin mengetahui apakah di kalimat string ini, tidak ada kata AnbiDev didalamnya.

var = "Kunjungi AnbiDev untuk belajar python "
result = "AnbiDev" not in var

print(result) # Output : False

Length

Terdapat fungsi built-in yang berguna untuk mengetahui panjang karakter dari string, yaitu len().

var = "anbidev"
print(len(var)) # Output : 7

Method Dan Operator Format


Sebelum kita sudah belajar bahwa Tipe Data Text (String) tidak dapat digabungkan / disisipkan dengan tipe data selain itu.

Akan tetapi python memiliki operator yang berguna di kondisi seperti ini. Operator itu adalah %. Berikut contoh penggunaan sederhananya.

txt = "anbidev selalu no %d di hati %s" % (1,'kita')
print(txt) # Output : "anbidev selalu no 1 di hati kita"

Dan ini beberapa list simbol yang dapat digunakan untuk tipe data yang lain.

SimbolDeskripsi
%cDigunakan untuk Karakter
%sDigunakan untuk String
%iDigunakan untuk Bilangan Desimal
%dDigunakan untuk Bilangan Desimal
%uDigunakan untuk Obsolete type
%oDiguankan untuk Bilangan Oktal
%xDigunakan untuk Hexadecimal (Huruf Kecil)
%XDigunakan untuk Hexadecimal (Huruf Besar)
%eDigunakan untuk Eksponensial (Huruf Kecil)
%EDigunakan untuk Eksponensial (Huruf Besar)
%fDigunakan untuk Float

Serta kita juga bisa menggunakan salah satu methods dari string yang digunakan khusus untuk menggabungkan nilai selain string, methods itu disebut format.

age = 20
txt = "Umur saya sekarang {} tahun"

print(txt.format(age)) # Output "Umur saya sekarang 20 tahun"

Argumen pada methods format diletakkan di dalam placeholder (tempat tampung) dengan karakter {} .

format dapat menampung banyak parameter dan ditempatkan pada masing - masing placeholder.

qty = 3
itemno = 302
harga = 39.98
order = "Saya Order item nomor {} sebanyak {} dengan harga masing - masing ${}"

print(order.format(itemno, qty, harga))
# Output : "Saya Order item nomor 302 sebanyak 3 dengan harga masing - masing $39.98"

Kamu juga dapat menggunakan indexing pada placeholder agar masing - masing argumen diletakan diposisi yang benar.

qty = 3
itemno = 302
harga = 109.89
order = "Saya Bayar dengan ${2}, untuk item nomor {0} sebanyak {1} item"

print(order.format(itemno, qty, harga))
# Output : "Saya Bayar dengan $109.89 untuk item nomor 302 sebanyak 3 item"