Cara menggunakan multi line string python

Tipe data Python – String adalah immutable sequences of unicode codepoints. Codepoints dapat kita bayangkan sebagai karakter, walaupn tidak terlalu mirip. Urutan karakter pada Python string immutable, yang artinya tidak diubah.

Show

Untuk mendeklarasikan string dapat menggunakan single quote ‘string goes here’ atau double quote “string goes here”

>>> "Ini hari Jum'at"
"Ini hari Jum'at"
>>> '"Ya!", jawab Dia, "Gua setuju banget!"'
'"Ya!", jawab Dia, "Gua setuju banget!"'

String yang berdekatan akan digabungkan otomatis oleh Python.

>>> "Pertama" "Kedua"
'PertamaKedua'

Multiline string menggunakan triple double quote “”” atau triple single quote ”’

Multiline string juga dapat kita tuliskan dengan escape character \n sebagai penunjuk new line.

>>> """Halo apa kabar
... ini adalah
... multiline string"""
'Halo apa kabar\nini adalah\nmultiline string'
>>> m = 'Ini adalah\nmultiline string'
>>> m
'Ini adalah\nmultiline string'
>>> print(m)
Ini adalah
multiline string

Escape character juga dapat digunakan untuk keperluan, untuk lebih detail, dapat anda kunjungi dokumentasi lengkapnya disini

Untuk kasus tertentu, seperti mendefinisikan variable untuk path system akan sangat rumit dengan banyaknya slash atau backslash. Python memiliki fitur raw string, dimana apa yang ditulis, itu yang didapat. Cara menggunakannya adalah dengan menuliskan huruf r kecil sebelum string.

>>> mypath = r'C:\python\belajar\asoy'
>>> mypath
'C:\\python\\belajar\\asoy'
>>> print(mypath)
'C:\mypath\belajar\asoy'

Python juga memiliki string constructor, kita dapat mengkonversi dari integer atau float

String juga dapat kita akses per character. Contoh : s = “01234”, kita dapat akses s[1] dan menghasilkan angka 1. Indeks pada string adalah zero-based, yang artinya index pertama adalah 0.

>>> str(123)
'123'
>>> str(6.03e23)
'6.03e+23
>>> s = '01234'
>>> s[1]
'1'

Anda bisa mengeksplor lebih mendalam dengan help(str).

Melihat dokumentasi adalah suatu kebiasaan yang baik dilakukan. Salah satu contoh adalah method capitalize. Contoh: s = ‘bandung’, s.capitalize() akan menghasilkan ‘Bandung’

Yang perlu diperhatikan adalah, string immutable, artinya tidak dapat diubah, dengan contoh diatas, coba ketikan ulang s di REPL, maka nilai s adalah tetap ‘bandung’

Setelah kita belajar Python tentang Indentasi, maka kita akan melanjutkan kembali pada bagian ke 4 ini tentang komentar dan dokumentasi. Secara umum komentar pada program bertujuan untuk menjelaskan algoritma dan keterangan yang diperlukan. Dengan memberikan komentar, untuk orang lain yang ikut mengerjakan proyek tersebut dapat memahami kode yang kita buat. Dan keuntungan bagi pembuat program juga memudahkan kedepannya apabila, melakukan perubahan-perubahan.

Komentar pada bahasa pemrograman Python dan yang lainnya, merupakan baris kode yang tidak ikut dieksekusi. Apapun kode yang berada dalam block komentar, tidak mempengaruhi output dari program tersebut.

Bentuk Komentar

Pada Python, ada 3 macam bentuk komentar, yaitu single line, inline, dan multiline.

  1. Single line
    # Single line dimulai dengan tanda pagar
    
  2. Inline
    print("Hello world") # inline dimulai dengan tanda pagar juga
    
  3. Multiline
    """
    Komentar multiline berada dalam kutip ganda 3 kali
    dan semua yang didalamnya tidak akan dieksekusi
    """
    

Docstring

Docstring adalah singkatan dari Documentation String. Digunakan untuk memberikan keterangan singkat atau sebagai dokumentasi pada class, function, atau modul yang dibuat.

Tidak seperti komentar yang biasa, dia berada didalam suatu fungsi dan kita bisa mengaksesnya. Seperti berikut.

# Membuat fungsi
def my_func():
     """Ini adalah tidak ada apa-apa"""
     return

# mengakses docstring dengan __doc__
print(my_func.__doc__)

Ini adalah tidak ada apa-apa

# bisa juga dengan seperti ini
help(my_func)

# yang ditampilkan seperti ini
Help on function my_func in module __main__:

my_func()
    Ini adalah tidak ada apa-apa

Docstring dengan single line

Bagaimana kalau membuat docstring menggunakan komentar singli line?

def greet(name, greeting="Hello"):
     # print a greeting
     # Optional parameter
     print("{} {}".format(greeting, name))

print(greet.__doc__)
None

help(greet)

Help on function greet in module __main__:

greet(name, greeting='Hello')
(END)

Ternyata menggunakan macam bentuk komentar lain, tidak bisa diterapkan pada docstring.

Membuat Documentation

Docstring itu adalah komentar multiline, karena itu pada contoh di atas dengan single line menghasilkan output None. Baik, sekarang kita akan coba membuat dokumentasi sederhana.

Umumnya syntax dasar membuat docstring ada 2 bentuk yang digunakan

  1. One line
    def hai():
        """Katakan hai pada teman Anda."""
        print("Hai temanku")
    
  2. Multi line
    def sapa(nama, bahasa="id"):
        """Ucapkan Hai untuk dia.
    
        Arguments:
        nama: untuk menyimpan namanya.
        bahasa: bahasa yang digunakannya.
        """
        print(bahasa+ " "+nama)
    

Menggunakan Google Python Style

Google telah merilis yang disebut dengan Google Python Style Guide termasuk didalamnya membuat komentar dokumentasi.

def hello(name, language="en"):
    """Say hello to a person.

    Args:
            name: the name of person as string
            language: the language code string

    Returns:
            A number.
    """

    print(greeting[language]+" "+name)
    return 4

Akhir Kata

Docstring adalah multiline comment yang bisa digunakan untuk mendokumentasikan modul, class, maupun fungsi dan method. Secara umum ada dua bentuk membuat dokumentasi yaitu one line atau hanya satu baris saja dan multiline atau banyak baris.

Demikian pada penggunaan komentar reguler yang terdiri dari 3 bentuk, ada single line, inline, dan juga multiline. Pada single line dan inline, diawali dengan tanda pagar (#) yang setiap karakter setelah tanda pagar ini tidak akan dijalankan oleh program. Perbedaan dari single line dan inline terletak pada penempatannya saja.