Chia danh sách mỗi phần tử thứ n python

Để tách một chuỗi mỗi ký tự thứ n, hãy sử dụng khả năng hiểu danh sách với hàm range[] và phương thức hiểu danh sách. Nó sẽ trả về chuỗi chia mỗi ký tự thứ n

Trong ví dụ sau, chúng tôi đã chia chuỗi 3 ký tự một lần và trả về nó trong danh sách. Bạn có thể tách chuỗi một cách dễ dàng nhất

sample_str = 'IAmDividein'
n = 2
result = [sample_str[i:i+n] for i in range[0, len[sample_str], n]]
print[result]

# Output 👇
# ['IA', 'mD', 'iv', 'id', 'ei', 'n']

Nếu bạn bối rối với việc hiểu danh sách. Đây là kỹ thuật tương tự với vòng lặp FOR trong Python. Đầu ra của cả hai phương pháp sẽ giống nhau

sample_str = 'IAmDividein'
n = 2
n_list = []
for i in range[0, len[sample_str],n]:
  n_list.append[sample_str[i:i+n]]
print[n_list]

# Output 👇
# ['IA', 'mD', 'iv', 'id', 'ei', 'n']

Tách chuỗi trong Python mỗi n ký tự

Để tách một chuỗi trong python với mỗi ký tự n, hãy sử dụng mô-đun textwrap. Mô-đun textwrap là mô-đun tích hợp sẵn của python để làm việc với dữ liệu văn bản. Có một phương thức quấn [] để tách chuỗi thành n ký tự

Để tách chuỗi trong python bằng mô-đun textwrap

  1. Đầu tiên, cài đặt mô-đun textwrap bằng pip
  2. Bây giờ hãy nhập mô-đun textwrap
  3. Sử dụng hàm quấn [chuỗi, trong]
from textwrap import wrap
sample_str = 'IAmDividein'
n=2
res=wrap[sample_str, n]
print[res]

# Output 
# ['IA', 'mD', 'iv', 'id', 'ei', 'n']

Biểu thức chính quy trong python để Tách một chuỗi cứ sau n ký tự

Để tách một chuỗi cứ sau n ký tự, hãy sử dụng biểu thức chính quy trong python. Mô-đun python re được sử dụng để tạo biểu thức chính quy và tìm kết quả khớp. Chúng ta có thể sử dụng lại. hàm findall[] để tìm biểu thức chính quy dựa trên mẫu

Biểu thức chính quy Ví dụ số 1 cho ký tự chẵn

import re
sample_str = 'IAmDividein'
splited= re.findall['..',sample_str]
print[splited]

# Output 
# ['IA', 'mD', 'iv', 'id', 'ei']

Biểu thức chính quy số 2 cho số lẻ

import re
sample_str = 'IAmDividein'
splited= re.findall['..?',sample_str]
print[splited]

# Output 
# ['IA', 'mD', 'iv', 'id', 'ei', 'n']

Biểu thức chính quy số 3 Làm việc cho cả lẻ và chẵn

import re
sample_str = 'IAmDividein'
splited= re.findall['.{1,2}',sample_str]
print[splited]

# Output 
# ['IA', 'mD', 'iv', 'id', 'ei', 'n']

Nhóm các phần tử thành các nhóm có độ dài n trong Python bằng cách tách chuỗi

Bạn cũng có thể thử phương pháp này để nhóm chuỗi theo ký tự n-lengh. Sử dụng hàm zip[] và join[] để nhóm các phần tử có độ dài n

sample_str = 'IAmDividein'
splited=  map[''.join, zip[*[iter[sample_str]]*2]]
s_list = list[splited]
print[s_list]

# Output 
# ['IA', 'mD', 'iv', 'id', 'ei']

Sử dụng Từ khóa năng suất để tách chuỗi cho mỗi n ký tự

Một trình tạo để chia một chuỗi thành các khối n đơn vị. Vì vậy, đây là điều kỳ diệu, trong phương pháp này, chúng ta sẽ sử dụng các trình tạo để chia chuỗi thành n ký tự. Nó sẽ tách chuỗi cho mỗi ký tự n

def split_by_n[seq, n]:
    while seq:
        yield seq[:n]
        seq = seq[n:]
        
sample_str = 'IAmDividein'
gen_spl = split_by_n[sample_str, 2]
s_list = list[gen_spl]
print[s_list]

# Output 
# ['IA', 'mD', 'iv', 'id', 'ei']

Sử dụng mô-đun more_itertools để tách chuỗi mỗi n ký tự

more_itertools chỉ là phiên bản mở rộng của iter_tools. Còn rất nhiều hàm liên quan đến string và list trong more_itertools. Ta sẽ dùng hàm slice[] để chia chuỗi cho mỗi n ký tự

Để tách chuỗi mỗi n ký tự Hãy làm theo các bước sau

  1. cài đặt mô-đun more_itertools
  2. nhập hàm slice[] từ more_itertools
  3. chuyển chuỗi và n vào hàm slice[]
  4. Chuyển đổi kết quả trả về thành một danh sách[] vì nó sẽ là một đối tượng trình tạo

Xem ví dụ sau

________số 8

Sử dụng hàm groupby[] để tách chuỗi mỗi n ký tự

Chúng ta cũng có thể sử dụng hàm groupby[], chain[] và repeat[] từ itertools để tách chuỗi cho mỗi ký tự thứ n. Kiểm tra ví dụ sau

from itertools import groupby, chain, repeat, cycle
text = "wwworldggggreattecchemggpwwwzaz"
n = 3
c = cycle[chain[repeat[0, n], repeat[1, n]]]
res = ["".join[g] for _, g in groupby[text, lambda x: next[c]]]
print[res]

Output

['www', 'orl', 'dgg', 'ggr', 'eat', 'tec', 'che', 'mgg', 'pww', 'wza', 'z']

Sử dụng hàm islice[] để cắt một chuỗi ở mỗi ký tự thứ n

Hàm islice[] là một hàm có sẵn trong python giúp chúng ta cắt chuỗi. Nó có thể tách chuỗi cho mọi ký tự hoặc chữ cái thứ n

sample_str = 'IAmDividein'
n = 2
n_list = []
for i in range[0, len[sample_str],n]:
  n_list.append[sample_str[i:i+n]]
print[n_list]

# Output 👇
# ['IA', 'mD', 'iv', 'id', 'ei', 'n']
0

Tách chuỗi trong python mỗi ký tự thứ n bằng mit. cá mú[] phương pháp

Chúng ta cũng có thể sử dụng mit. grouper[] từ thư viện more_itertools để chia chuỗi theo ký tự thứ n

sample_str = 'IAmDividein'
n = 2
n_list = []
for i in range[0, len[sample_str],n]:
  n_list.append[sample_str[i:i+n]]
print[n_list]

# Output 👇
# ['IA', 'mD', 'iv', 'id', 'ei', 'n']
1

sử dụng mit. chunked[] phương thức chia chuỗi theo n ký tự

Chúng ta cũng có thể sử dụng mit. hàm chunked[] từ thư viện more_itertools để chia chuỗi theo ký tự thứ n

sample_str = 'IAmDividein'
n = 2
n_list = []
for i in range[0, len[sample_str],n]:
  n_list.append[sample_str[i:i+n]]
print[n_list]

# Output 👇
# ['IA', 'mD', 'iv', 'id', 'ei', 'n']
2

Những bài viết liên quan

  • Học quét web
  • học Git
  • Khung web Python

Trò chuyện với tôi

Tôi hy vọng bạn thích Hướng dẫn Python này💗. Bây giờ, đừng ngần ngại để lại tin nhắn tại haxratali0@gamil. com. Tôi trả lời mọi thư tôi nhận được. tôi sẽ rất vui được trò chuyện với bạn

Chủ Đề