Bagaimana Anda mencetak karakter berurutan dengan python?


Kode sumber

# creating the aay
a = [18, 18, 18, 6, 3, 4, 9, 9, 9]
l = len(a)
for i in range(l - 2):
	if a[i] == a[i + 1] and a[i + 1] == a[i + 2]:
		print(a[i])

Keluaran

18
9


_
Untuk mendownload file mentah Klik Disini

Ketika diperlukan untuk menemukan string karakter berurutan yang berjarak sama, pemahaman daftar, operator 'semua' dan metode 'ord' digunakan

Contoh

Di bawah ini adalah demonstrasi yang sama

my_list = ["abc", "egfg", "mpsv", "abed", 'xzbd', 'agms']

print("The list is :")
print(my_list)

my_result = [sub for sub in my_list if all(ord(sub[index + 1]) - ord(sub[index]) == ord(sub[1]) - ord(sub[0]) for index in range(0, len(sub) - 1))]

print("The resultant list is :")
print(my_result)

Keluaran

The list is :
['abc', 'egfg', 'mpsv', 'abed', 'xzbd', 'agms']
The resultant list is :
['abc', 'mpsv', 'agms']

Penjelasan

  • Daftar nilai string ditentukan dan ditampilkan di konsol

  • Pemahaman daftar digunakan untuk beralih melalui daftar

  • Operator 'semua' bersama dengan metode 'ord' digunakan untuk memeriksa apakah perbedaan antara indeks berikutnya dan indeks saat ini setara dengan indeks pertama dan indeks nol

    Seseorang di komentar khawatir Anda menginginkan jumlah total angka jadi "11100111" -> {"1":6, "0":2}. Dalam hal ini Anda ingin menggunakan a

    from collections import Counter
    
    s = "11100111"
    result = Counter(s)
    # {"1":6, "0":2}
    
    _

    Metode Anda

    Seperti yang telah ditunjukkan banyak orang, metode Anda gagal karena Anda mengulang

    [("1": 3), ("0", 3), ("2", 3), ("3", 2), ("4", 2), ("5", 5)]
    
    1 tetapi menangani
    [("1": 3), ("0", 3), ("2", 3), ("3", 2), ("4", 2), ("5", 5)]
    
    2. Hal ini menyebabkan kesalahan off-by-one ketika
    [("1": 3), ("0", 3), ("2", 3), ("3", 2), ("4", 2), ("5", 5)]
    
    3 menunjuk pada indeks terakhir
    [("1": 3), ("0", 3), ("2", 3), ("3", 2), ("4", 2), ("5", 5)]
    
    4, jadi
    [("1": 3), ("0", 3), ("2", 3), ("3", 2), ("4", 2), ("5", 5)]
    
    5 memunculkan
    [("1": 3), ("0", 3), ("2", 3), ("3", 2), ("4", 2), ("5", 5)]
    
    6. Salah satu cara untuk memperbaikinya adalah dengan mengulangi
    [("1": 3), ("0", 3), ("2", 3), ("3", 2), ("4", 2), ("5", 5)]
    
    7, tetapi lebih pythonic untuk menghasilkan sesuatu untuk diulang

    Untuk string yang tidak terlalu besar,

    [("1": 3), ("0", 3), ("2", 3), ("3", 2), ("4", 2), ("5", 5)]
    
    8 bukan masalah kinerja, jadi Anda bisa melakukannya

    counts = []
    count = 1
    for a, b in zip(s, s[1:]):
        if a==b:
            count += 1
        else:
            counts.append((a, count))
            count = 1
    

    Satu-satunya masalah adalah Anda harus membuat huruf khusus pada karakter terakhir jika itu unik. Itu bisa diperbaiki dengan

    import itertools
    
    counts = []
    count = 1
    for a, b in itertools.zip_longest(s, s[1:], fillvalue=None):
        if a==b:
            count += 1
        else:
            counts.append((a, count))
            count = 1
    

    Jika Anda memiliki string yang sangat besar dan tidak tahan untuk menyimpan dua di antaranya dalam memori sekaligus, Anda dapat menggunakan

    Idenya adalah untuk melintasi string dari kiri ke kanan. Untuk setiap karakter yang dilintasi, cetak dalam satu baris jika berturut-turut dengan yang sebelumnya, jika tidak, cetak karakter baris baru.  

    Penerapan

    C++




    // C++ program to print consecutive characters

    // together in a line.

    #include <iostream>

    using namespace std;

     

    ________ 143 _______ _______ 144 _______

    ABC
    XYZ
    A
    C
    CD
    0

    ABC
    XYZ
    A
    C
    CD
    1
    ABC
    XYZ
    A
    C
    CD
    2

    ABC
    XYZ
    A
    C
    CD
    1
    ABC
    XYZ
    A
    C
    CD
    4
    ABC
    XYZ
    A
    C
    CD
    5
    ABC
    XYZ
    A
    C
    CD
    6
    ABC
    XYZ
    A
    C
    CD
    7
    ABC
    XYZ
    A
    C
    CD
    8
    ABC
    XYZ
    A
    C
    CD
    9

    // C++ program to print consecutive characters0// C++ program to print consecutive characters1 // C++ program to print consecutive characters2

    ________137

    The list is :
    ['abc', 'egfg', 'mpsv', 'abed', 'xzbd', 'agms']
    The resultant list is :
    ['abc', 'mpsv', 'agms']
    _137_______4

    ________137

    The list is :
    ['abc', 'egfg', 'mpsv', 'abed', 'xzbd', 'agms']
    The resultant list is :
    ['abc', 'mpsv', 'agms']
    _137_______6

    ________137

    # creating the aay
    a = [18, 18, 18, 6, 3, 4, 9, 9, 9]
    l = len(a)
    for i in range(l - 2):
    	if a[i] == a[i + 1] and a[i + 1] == a[i + 2]:
    		print(a[i])
    _137_______8

    // C++ program to print consecutive characters3// together in a line.0// together in a line.1 // together in a line.2

    ________137

    # creating the aay
    a = [18, 18, 18, 6, 3, 4, 9, 9, 9]
    l = len(a)
    for i in range(l - 2):
    	if a[i] == a[i + 1] and a[i + 1] == a[i + 2]:
    		print(a[i])
    _138_______4

    ABC
    XYZ
    A
    C
    CD
    1// together in a line.6

    // together in a line._6

     

    // together in a line._8

    ABC
    XYZ
    A
    C
    CD
    6 #include <iostream>0

    ABC
    XYZ
    A
    C
    CD
    0

    ABC
    XYZ
    A
    C
    CD
    1#include <iostream>3#include <iostream>4// together in a line.4

    ABC
    XYZ
    A
    C
    CD
    1#include <iostream>7

    ABC
    XYZ
    A
    C
    CD
    1#include <iostream>9 using0

    // together in a line._6

    Jawa




    using_2

    // together in a line.

    using4 using5

     

    ABC
    XYZ
    A
    C
    CD
    1using7 void using9

    ABC
    XYZ
    A
    C
    CD
    1
    ABC
    XYZ
    A
    C
    CD
    0

    // C++ program to print consecutive characters0namespace3 namespace4

    // C++ program to print consecutive characters0namespace6namespace7namespace8

    // C++ program to print consecutive characters0

    ABC
    XYZ
    A
    C
    CD
    4
    ABC
    XYZ
    A
    C
    CD
    5
    ABC
    XYZ
    A
    C
    CD
    6 ________142______3std;4std;5

    // C++ program to print consecutive characters3// C++ program to print consecutive characters1 std;8std;4void0std;4void2

    void3void4std;4void6std;4void8

    void3print(string str)0

    ________137

    The list is :
    ['abc', 'egfg', 'mpsv', 'abed', 'xzbd', 'agms']
    The resultant list is :
    ['abc', 'mpsv', 'agms']
    _138_______6

    ________137

    The list is :
    ['abc', 'egfg', 'mpsv', 'abed', 'xzbd', 'agms']
    The resultant list is :
    ['abc', 'mpsv', 'agms']
    _137_______8
    ABC
    XYZ
    A
    C
    CD
    0

    void3print(string str)7// together in a line.1 print(string str)9

    ________137

    The list is :
    ['abc', 'egfg', 'mpsv', 'abed', 'xzbd', 'agms']
    The resultant list is :
    ['abc', 'mpsv', 'agms']
    _138_______6

    ________137

    # creating the aay
    a = [18, 18, 18, 6, 3, 4, 9, 9, 9]
    l = len(a)
    for i in range(l - 2):
    	if a[i] == a[i + 1] and a[i + 1] == a[i + 2]:
    		print(a[i])
    _138_______6

    ABC
    XYZ
    A
    C
    CD
    1// together in a line.6

     

    ABC
    XYZ
    A
    C
    CD
    1// together in a line.8

    ABC
    XYZ
    A
    C
    CD
    1
    ABC
    XYZ
    A
    C
    CD
    09 using7 void
    ABC
    XYZ
    A
    C
    CD
    12

    ABC
    XYZ
    A
    C
    CD
    1
    ABC
    XYZ
    A
    C
    CD
    0

    // C++ program to print consecutive characters0

    ABC
    XYZ
    A
    C
    CD
    16#include <iostream>4// together in a line.4

    ________137

    # creating the aay
    a = [18, 18, 18, 6, 3, 4, 9, 9, 9]
    l = len(a)
    for i in range(l - 2):
    	if a[i] == a[i + 1] and a[i + 1] == a[i + 2]:
    		print(a[i])
    _139_______7

    ABC
    XYZ
    A
    C
    CD
    1// together in a line.6

    // together in a line._6

     

    ABC
    XYZ
    A
    C
    CD
    _24

    Python3




    ABC
    XYZ
    A
    C
    CD
    _25

    ABC
    XYZ
    A
    C
    CD
    _26

     

     

    ________15______27

    ABC
    XYZ
    A
    C
    CD
    28

    ABC
    XYZ
    A
    C
    CD
    1
    ABC
    XYZ
    A
    C
    CD
    30
    ABC
    XYZ
    A
    C
    CD
    31namespace7
    ABC
    XYZ
    A
    C
    CD
    _33
    ABC
    XYZ
    A
    C
    CD
    34
    ABC
    XYZ
    A
    C
    CD
    35

     

    ABC
    XYZ
    A
    C
    CD
    1
    ABC
    XYZ
    A
    C
    CD
    4
    ABC
    XYZ
    A
    C
    CD
    38
    ABC
    XYZ
    A
    C
    CD
    39
    ABC
    XYZ
    A
    C
    CD
    40
    ABC
    XYZ
    A
    C
    CD
    5std;4
    ABC
    XYZ
    A
    C
    CD
    43
    ABC
    XYZ
    A
    C
    CD
    44________15______45

    // C++ program to print consecutive characters0// C++ program to print consecutive characters1

    ABC
    XYZ
    A
    C
    CD
    5
    ABC
    XYZ
    A
    C
    CD
    49
    ABC
    XYZ
    A
    C
    CD
    50
    ABC
    XYZ
    A
    C
    CD
    34
    ABC
    XYZ
    A
    C
    CD
    ____34 _________________________________________________________________________________________________________________________________________________________________________________________________________.

    void3

    ABC
    XYZ
    A
    C
    CD
    49
    ABC
    XYZ
    A
    C
    CD
    50
    ABC
    XYZ
    A
    C
    CD
    34
    ABC
    XYZ
    A
    C
    CD
    34
    ABC
    XYZ
    A
    C
    CD
    49
    ABC
    XYZ
    A
    C
    CD
    _________________________5555.____142____________________1515____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________g

    // C++ program to print consecutive characters3

    ABC
    XYZ
    A
    C
    CD
    30
    ABC
    XYZ
    A
    C
    CD
    76
    ABC
    XYZ
    A
    C
    CD
    34
    ABC
    XYZ
    A
    C
    CD
    35

    // C++ program to print consecutive characters0// C++ program to print consecutive characters8

    ABC
    XYZ
    A
    C
    CD
    81

    // C++ program to print consecutive characters3

    ABC
    XYZ
    A
    C
    CD
    30
    ABC
    XYZ
    A
    C
    CD
    84

    // C++ program to print consecutive characters3

    ABC
    XYZ
    A
    C
    CD
    30
    ABC
    XYZ
    A
    C
    CD
    76
    ABC
    XYZ
    A
    C
    CD
    34
    ABC
    XYZ
    A
    C
    CD
    35

     

     

    ABC
    XYZ
    A
    C
    CD
    _90

    // C++ program to print consecutive characters1

    ABC
    XYZ
    A
    C
    CD
    92
    ABC
    XYZ
    A
    C
    CD
    34
    ABC
    XYZ
    A
    C
    CD
    34
    ABC
    XYZ
    A
    C
    CD
    95
    ABC
    XYZ
    A
    C
    CD
    81

     

    ABC
    XYZ
    A
    C
    CD
    1
    ABC
    XYZ
    A
    C
    CD
    98
    ABC
    XYZ
    A
    C
    CD
    34 #include <iostream>4

    ABC
    XYZ
    A
    C
    CD
    1// C++ program to print consecutive characters02

     

    // C++ program to print consecutive characters_03

    // C++ program to print consecutive characters_04

    C#




    // C++ program to print consecutive characters_05

    // together in a line.

    using // C++ program to print consecutive characters08

     

    using4 using5

     

    ABC
    XYZ
    A
    C
    CD
    1using7 void using9

    ABC
    XYZ
    A
    C
    CD
    1
    ABC
    XYZ
    A
    C
    CD
    0

    // C++ program to print consecutive characters0namespace3// C++ program to print consecutive characters19

    ________137

    # creating the aay
    a = [18, 18, 18, 6, 3, 4, 9, 9, 9]
    l = len(a)
    for i in range(l - 2):
    	if a[i] == a[i + 1] and a[i + 1] == a[i + 2]:
    		print(a[i])
    _137_______21

    // C++ program to print consecutive characters0

    ABC
    XYZ
    A
    C
    CD
    4
    ABC
    XYZ
    A
    C
    CD
    5
    ABC
    XYZ
    A
    C
    CD
    6 // C++ program to print consecutive characters26

    // C++ program to print consecutive characters3// C++ program to print consecutive characters1 // C++ program to print consecutive characters2

    ________143

    The list is :
    ['abc', 'egfg', 'mpsv', 'abed', 'xzbd', 'agms']
    The resultant list is :
    ['abc', 'mpsv', 'agms']
    _137_______31

    ________143

    The list is :
    ['abc', 'egfg', 'mpsv', 'abed', 'xzbd', 'agms']
    The resultant list is :
    ['abc', 'mpsv', 'agms']
    _137_______33

    ________137

    The list is :
    ['abc', 'egfg', 'mpsv', 'abed', 'xzbd', 'agms']
    The resultant list is :
    ['abc', 'mpsv', 'agms']
    _138_______6

    ________137

    The list is :
    ['abc', 'egfg', 'mpsv', 'abed', 'xzbd', 'agms']
    The resultant list is :
    ['abc', 'mpsv', 'agms']
    _137_______8
    ABC
    XYZ
    A
    C
    CD
    0

    void3// C++ program to print consecutive characters40// together in a line.1 print(string str)9

    ________137

    The list is :
    ['abc', 'egfg', 'mpsv', 'abed', 'xzbd', 'agms']
    The resultant list is :
    ['abc', 'mpsv', 'agms']
    _138_______6

    ________137

    # creating the aay
    a = [18, 18, 18, 6, 3, 4, 9, 9, 9]
    l = len(a)
    for i in range(l - 2):
    	if a[i] == a[i + 1] and a[i + 1] == a[i + 2]:
    		print(a[i])
    _138_______6

    ABC
    XYZ
    A
    C
    CD
    1// together in a line.6

     

    ABC
    XYZ
    A
    C
    CD
    1// together in a line.8

    ABC
    XYZ
    A
    C
    CD
    1
    ABC
    XYZ
    A
    C
    CD
    09 using7 void // C++ program to print consecutive characters55

    ABC
    XYZ
    A
    C
    CD
    1
    ABC
    XYZ
    A
    C
    CD
    0

    // C++ program to print consecutive characters0

    ABC
    XYZ
    A
    C
    CD
    16#include <iostream>4// together in a line.4

    ________137

    # creating the aay
    a = [18, 18, 18, 6, 3, 4, 9, 9, 9]
    l = len(a)
    for i in range(l - 2):
    	if a[i] == a[i + 1] and a[i + 1] == a[i + 2]:
    		print(a[i])
    _139_______7

    ABC
    XYZ
    A
    C
    CD
    1// together in a line.6

    // together in a line._6

     

    // C++ program to print consecutive characters_67

    Javascript




    // C++ program to print consecutive characters_68

     

    // C++ program to print consecutive characters_69

    // C++ program to print consecutive characters_70

    // C++ program to print consecutive characters_71 // C++ program to print consecutive characters72

    ABC
    XYZ
    A
    C
    CD
    0

    ABC
    XYZ
    A
    C
    CD
    1// C++ program to print consecutive characters75// C++ program to print consecutive characters76// C++ program to print consecutive characters77

    ABC
    XYZ
    A
    C
    CD
    1// C++ program to print consecutive characters79

    ABC
    XYZ
    A
    C
    CD
    1

    ABC
    XYZ
    A
    C
    CD
    1
    ABC
    XYZ
    A
    C
    CD
    4// C++ program to print consecutive characters83

    ABC
    XYZ
    A
    C
    CD
    1
    ABC
    XYZ
    A
    C
    CD
    0

    // C++ program to print consecutive characters0// C++ program to print consecutive characters1 // C++ program to print consecutive characters88

    ________137

    ABC
    XYZ
    A
    C
    CD
    _137_______90

    ________137

    The list is :
    ['abc', 'egfg', 'mpsv', 'abed', 'xzbd', 'agms']
    The resultant list is :
    ['abc', 'mpsv', 'agms']
    _137_______92

    ________137

    ABC
    XYZ
    A
    C
    CD
    _137_______94

    ________137

    # creating the aay
    a = [18, 18, 18, 6, 3, 4, 9, 9, 9]
    l = len(a)
    for i in range(l - 2):
    	if a[i] == a[i + 1] and a[i + 1] == a[i + 2]:
    		print(a[i])
    _15_______0

    ________137

    The list is :
    ['abc', 'egfg', 'mpsv', 'abed', 'xzbd', 'agms']
    The resultant list is :
    ['abc', 'mpsv', 'agms']
    _137_______98

    ________137

    # creating the aay
    a = [18, 18, 18, 6, 3, 4, 9, 9, 9]
    l = len(a)
    for i in range(l - 2):
    	if a[i] == a[i + 1] and a[i + 1] == a[i + 2]:
    		print(a[i])
    _138_______6

    ________137

    # creating the aay
    a = [18, 18, 18, 6, 3, 4, 9, 9, 9]
    l = len(a)
    for i in range(l - 2):
    	if a[i] == a[i + 1] and a[i + 1] == a[i + 2]:
    		print(a[i])
    _137_______8

    ________137

    # creating the aay
    a = [18, 18, 18, 6, 3, 4, 9, 9, 9]
    l = len(a)
    for i in range(l - 2):
    	if a[i] == a[i + 1] and a[i + 1] == a[i + 2]:
    		print(a[i])
    _15_______0

    // C++ program to print consecutive characters3// together in a line.06// together in a line.07 print(string str)9

    ________137

    # creating the aay
    a = [18, 18, 18, 6, 3, 4, 9, 9, 9]
    l = len(a)
    for i in range(l - 2):
    	if a[i] == a[i + 1] and a[i + 1] == a[i + 2]:
    		print(a[i])
    _138_______6

    ABC
    XYZ
    A
    C
    CD
    1// together in a line.6

    // together in a line._6

     

    // together in a line._8

    ________138

    ABC
    XYZ
    A
    C
    CD
    _139_______4// together in a line.4

    #include <iostream>_7

     

    // together in a line._19

     

    // together in a line._20

    Keluaran

    ABC
    XYZ
    A
    C
    CD

    Kompleksitas Waktu. Pada)
    Ruang Bantu. O(1)

    Artikel ini disumbangkan oleh Rakesh Kumar. Jika Anda menyukai GeeksforGeeks dan ingin berkontribusi, Anda juga dapat menulis artikel menggunakan tulis. geeksforgeeks. org atau kirimkan artikel Anda ke review-team@geeksforgeeks. org. Lihat artikel Anda muncul di halaman utama GeeksforGeeks dan bantu Geeks lainnya.  

    Bagaimana Anda mencetak huruf berurutan dengan Python?

    Diberi sebuah String, ekstrak semua karakter berurutan dengan panjang K . Memasukkan. test_str = 'geeksforgeeks terbaik untuk Geeks', K = 3 Keluaran. ['eee', 'sss', 'bbb', 'rrr'] Penjelasan. K string berturut-turut panjang diekstraksi.

    Bagaimana Anda menemukan karakter berulang yang berurutan dalam sebuah string?

    Periksa apakah semua bit dapat dibuat sama dengan flip tunggal
    Komplemen 1 dan 2 dari Bilangan Biner
    Metode yang efisien untuk komplemen 2 dari string biner
    Jumlah membalik untuk membuat string biner bergantian. Tetapkan 1
    Hitung string dengan 1 berturut-turut
    Tambahkan dua string bit
    Hitung jumlah string biner tanpa 1 berturut-turut

    Bagaimana cara mencetak secara berurutan?

    Untuk mencetak keluaran berurutan dalam satu, Anda harus memformat keluaran Anda dengan menggunakan akhir. Sebagai contoh. -
    Sebenarnya setiap pernyataan cetak secara default diakhiri dengan karakter baris baru. Jadi, kami mengubah ujungnya menjadi ruang sehingga ketika kami mencetak di lain waktu hanya ada celah satu ruang
    Beri suara jika itu membantu

    Bagaimana Anda menemukan string berurutan di Python?

    Diberi String dan angka K, ekstrak K pertama digit berurutan membuat angka . Memasukkan. test_str = "geeks5geeks43best", K = 2 Keluaran. 43 Penjelasan. 43 adalah 2 digit pertama berturut-turut.