Belajar Python Penggabungan dan Perulangan String


Salah satu keunikkan Python adalah feature penggabungan dan perulangan string yang begitu sederhana. Suatu string dapat digabungkan dengan string lainnya. Akan tetapi perlu diingat bahwa tipe data string tidak dapat digabungkan dengan tipe data integer maupun float. Penggabungan beberapa string dapat dilakukan dengan menggunakan operator '+'. Berikut contoh syntax sederhananya.

output = input1 + input2


Dimana input1 dan input2 adalah dua buah string yang akan digabungkan, sedangkan output adalah string hasil penggabungannya.

<img src="python.png" alt="python">


Selain penggabungan, perulangan string pada Python relatif begitu sederhana dan mudah dipahami. Dengan menggunakan operator '*' sebagai perulangan dan n, jumlah perulangannya. Contoh perulangan string sebanyak 3 kali.

output = input * 3


String pada variable input diulang sebanyak 3 kali dan disimpan pada variable output.
sebagai perbandingan antara C++ dengan Python, berikut ini dua buah source code untuk mendapatkan hasil output yang sama.

Source Code C++ Pertama

#include <iostream>
using namespace std;
int main()
{
    int l,m,n;
    cout<<"Masukkan jumlah baris ";
    cin>>l;
    for (m=0; m<l; m++)
    {
        for (n=0; n<=m; n++)
        {
            cout<<"*";
        }
        cout<<endl;
    }
    return 0;
}


Script Python Pertama

INTJ = input('Masukkan jumlah baris ')
for i in range(INTJ):
    print '*'*(i+1)


Hasil Pertama

>>>
Masukkan jumlah baris 5
*
**
***
****
*****
>>>


Source Code C++ Kedua

#include <iostream>
using namespace std;
void error();
int main()
{
    int l,m,n,o,p;
    cout<<"Masukkan jumlah baris bintang: ";
    cin>>l;
    if(l<1)
    error();
    else
    p=l;
    for(m=1;m<=l;m++)
    {
        for(n=p;n>=1;n--)
        {
            if(n>1)
            cout<<" ";
        }
        for(o=1;o<=m;o++)
        {
            cout<<"*";
        }
        p-=1;
        cout<<endl;
    }
    return 0;
}


Script Python Kedua

INTJ = input('Masukkan jumlah baris ')
for i in range(INTJ):
    j = i+1
    print ' '*(INTJ-j)+'*'*j


Hasil Kedua

>>>
Masukkan jumlah baris 5
    *
   **
  ***
 ****
*****
>>>


Source Code C++ Ketiga

#include <iostream>
using namespace std;
int main()
{
    int l,m,n,o,p;
    cout<<"Masukkan tinggi pyramid ";
    cin>>l;
    p=l;
    for(m=1;m<=l;m++)
    {
        for(n=p;n>=1;n--)
        {
            if(n>1)
            cout<<" ";
        }
        for(o=1;o<=2*m-1;o++)
        {
            cout<<"*";
        }
        p-=1;
        cout<<endl;
    }
    return 0;
}


Script Python Ketiga

INTJ = input('Masukkan tinggi pyramid ')
for i in range(INTJ):
    j = i+1
    print ' '*(INTJ-j)+('*'*(2*j-1))


Hasil Ketiga

>>>
Masukkan tinggi pyramid 5
    *
   ***
  *****
 *******
*********
>>>


Untuk source code C++ secara explicit menggunakan nested for loops, perulangan bersarang. Sementara script Python nested loops secara implicit, maksudnya dalam script tersebut hanya menggunakan satu buah perulangan for, namun di dalamnya terdapat operator '*' untuk perulangan string. Antara C++ dengan Python, dengan hasil yang sama pada source code tersebut, Python lebih sederhana dan singkat dibandingkan C++.