Python
 Computer >> コンピューター >  >> プログラミング >> Python

文字列を均等に分割します(Pythonのハタ)


このチュートリアルでは、指定された文字列を等しい部分に分割するプログラムを作成します。例を見てみましょう。

入力

string = 'Tutorialspoint' each_part_length = 5

出力

Tutor ialsp ointX

入力

string = 'Tutorialspoint' each_part_length = 6

出力

Tutori alspoi ntXXXX

zip_longestを使用します itertoolsのメソッド 結果を達成するためのモジュール。

メソッドzip_longest イテレータが必要 引数として。 fillvalueを渡すこともできます 文字列を分割するため。同じ数の文字を含むタプルのリストを返します。

zip_longest 与えられた中で最も長いイテレータが使い果たされるまで、各反復でタプルを返します。また、タプルには、イテレータからの指定された長さの文字が含まれています。

# importing itertool module
import itertools
# initializing the string and length
string = 'Tutorialspoint'
each_part_length = 5
# storing n iterators for our need
iterator = [iter(string)] * each_part_length
# using zip_longest for dividing
result = list(itertools.zip_longest(*iterator, fillvalue='X'))
# converting the list of tuples to string
# and printing it
print(' '.join([''.join(item) for item in result]))

出力

上記のコードを実行すると、次の結果が得られます。

Tutor ialsp ointX

# importing itertool module
import itertools
# initializing the string and length
string = 'Tutorialspoint'
each_part_length = 6
# storing n iterators for our need
iterator = [iter(string)] * each_part_length
# using zip_longest for dividing
result = list(itertools.zip_longest(*iterator, fillvalue='X'))
# converting the list of tuples to string
# and printing it
print(' '.join([''.join(item) for item in result]))

出力

上記のコードを実行すると、次の結果が得られます。

Tutori alspoi ntXXXX

結論

チュートリアルに疑問がある場合は、コメントセクションでそのことを伝えてください。


  1. PythonでNEWLINEで分割する方法は?

    これを実現するために、文字列クラスでメソッドsplitlines()を使用できます。例: >>> """some multi line string""".splitlines() ['some', 'multi line', 'string'] 次のように、split()メソッドで区切り文字\nを指定することもできます。 >>> """some multi line string""".s

  2. Pythonで区切り文字strによって文字列を分割する方法は?

    PythonのStringクラスには、オプションの引数として区切り文字を受け取るsplit()というメソッドがあります。デフォルトの区切り文字は空白です。次のように使用できます: >>> 'aa-ab-ca'.split('-') ['aa', 'ab', 'ca'] >>> 'abc mno rst'.split(' ') ['abc', 'mno', 'rst'] この操作に正規表現を使用するこ