Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python Text Wrapping and Filling


ใน python textwrap โมดูลใช้เพื่อจัดรูปแบบและตัดข้อความธรรมดา มีบางตัวเลือกในการจัดรูปแบบข้อความโดยการปรับตัวแบ่งบรรทัดในย่อหน้าอินพุต

ในการใช้โมดูลเหล่านี้ เราจำเป็นต้องนำเข้า textwrap โมดูลในรหัสของเรา

import textwrap

แอตทริบิวต์อินสแตนซ์ Textwrapper ของตัวสร้างมีดังนี้ -

ซีเนียร์ คุณลักษณะและคำอธิบาย
1

ความกว้าง

ความยาวสูงสุดของบรรทัด ค่าเริ่มต้นคือ 70

2

expand_tabs

หากค่าของแอตทริบิวต์นี้เป็นจริง แท็บทั้งหมดจะถูกแทนที่ด้วยช่องว่าง ค่าเริ่มต้นคือ True

3

ขนาดแท็บ

เมื่อแอตทริบิวต์ expand_tabs เป็นจริง จะช่วยในการตั้งค่าขนาดแท็บด้วยค่าต่างๆ ค่าเริ่มต้นคือ 8

4

replace_whitespace

อักขระช่องว่างทั้งหมดในข้อความจะถูกแทนที่ด้วยช่องว่างเดียว เมื่อตั้งค่าเป็น True ค่าเริ่มต้นคือ True

5

drop_whitespace

หลังจากตัดข้อความแล้ว ช่องว่างที่จุดเริ่มต้นและจุดสิ้นสุดจะหายไป ค่าเริ่มต้นคือ True

6

initial_indent

โดยจะต่อท้ายสตริงที่กำหนดในบรรทัดแรกของข้อความที่ตัด ค่าเริ่มต้นคือ ‘ ’

7

subsequent_indent

มันต่อท้ายสตริงที่กำหนดให้กับทุกบรรทัดของข้อความที่ตัด ค่าเริ่มต้นคือ ‘ ’

8

ตัวยึด

ซึ่งจะต่อท้ายสตริงที่ส่วนท้ายของไฟล์เอาต์พุตไม่ว่าจะถูกตัดทอนหรือไม่ ค่าเริ่มต้นคือ […]

9

max_lines

ค่านี้จะกำหนดจำนวนบรรทัดที่จะมีหลังจากตัดข้อความ หากค่าเป็นไม่มี แสดงว่าไม่มีขีดจำกัด ค่าเริ่มต้นคือไม่มี

10

break_long_words

มันแบ่งคำยาวให้พอดีกับความกว้างที่กำหนด ค่าเริ่มต้นคือ True

11

break_on_hyphens

ใช้เพื่อตัดข้อความหลังเครื่องหมายยัติภังค์สำหรับคำประสม ค่าเริ่มต้นคือ True

วิธีการตัดข้อความ

มีวิธีการบางอย่างในโมดูล Textwrap โมดูลเหล่านี้คือ −

โมดูล (textwrap.wrap(ข้อความ ความกว้าง =70 **kwargs)) -

เมธอดนี้ล้อมย่อหน้าอินพุต ใช้ความกว้างของเส้นเพื่อห่อเนื้อหา ความกว้างของบรรทัดเริ่มต้นคือ 70 ซึ่งจะส่งคืนรายการบรรทัด ในรายการบรรทัดที่ตัดทั้งหมดจะถูกเก็บไว้

โมดูล (textwrap.fill(text, width =70, **kwargs)) -

วิธีการ fill() นั้นคล้ายกับวิธีการห่อ แต่ไม่ได้สร้างรายการ มันสร้างสตริง จะเพิ่มอักขระบรรทัดใหม่หลังจากเกินความกว้างที่กำหนด

โมดูล (textwrap.shorten(ข้อความ ความกว้าง **kwargs)) -

วิธีนี้จะย่อหรือตัดสตริงให้สั้นลง หลังจากตัดทอน ความยาวของข้อความจะเท่ากับความกว้างที่ระบุ มันจะเพิ่ม […] ที่ส่วนท้ายของสตริง

โค้ดตัวอย่าง

import textwrap

python_desc = """Python is a general-purpose interpreted, interactive, object-oriented, 
                 and high-level programming language. It was created by Guido van Rossum 
                 during 1985- 1990. Like Perl, Python source code is also available under 
                 the GNU General Public License (GPL). This tutorial gives enough 
                 understanding on Python programming language."""

my_wrap = textwrap.TextWrapper(width = 40)
wrap_list = my_wrap.wrap(text=python_desc)

for line in wrap_list:
   print(line)
    
single_line = """Python is a general-purpose interpreted, interactive, object-oriented, 
                 and high-level programming language."""

print('\n\n' + my_wrap.fill(text = single_line))

short_text = textwrap.shorten(text = python_desc, width=150)
print('\n\n' + my_wrap.fill(text = short_text))

ผลลัพธ์

Python is a general-purpose interpreted,
interactive, object-oriented,
and high-level programming language. It
was created by Guido van Rossum
during 1985- 1990. Like Perl, Python
source code is also available under
the GNU General Public License (GPL).
This tutorial gives enough
understanding on Python programming
language.

Python is a general-purpose interpreted,
interactive, object-oriented,
and high-level programming language.

Python is a general-purpose interpreted,
interactive, object-oriented, and high-
level programming language. It was
created by Guido van Rossum [...]