文字换行,标点符号不连续解决
???
不要变成
?
?
?
避免连续的标点符号被分割成多行
import string
def display_text(input_text):
punctuation_marks = set(string.punctuation + ',。!?;')
current_line = ""
for char in input_text:
current_line += char
if char in punctuation_marks:
print(current_line.strip())
current_line = ""
# 打印剩余的内容(如最后一行)
if current_line:
print(current_line.strip())
# 多行文本输入,直到遇到“# ꧂ ꧁”为止
input_text = ""
while True:
line = input()
if line == "# ꧂ ꧁":
break
input_text += line + "\n"
# 按标点符号处换行显示文本
display_text(input_text)
嘿,这段代码主要是用来按照标点符号处进行分行显示文本的。我来给你整理一下:
-
函数:
display_text(input_text)
: 这个函数接受一个参数input_text
,是用来显示的多行文本。- 参数:
input_text
(字符串)- 输入的多行文本。 - 返回值:无返回值。
- 参数:
-
变量:
punctuation_marks
: 一个包含标点符号和中文标点符号的集合。current_line
: 当前正在构建的文本行。
-
主要逻辑:
-
多行文本输入:
- 循环读取用户输入的多行文本,直到遇到"# ꧂ ꧁"为止。
- 每次读取的行都添加到
input_text
变量中。
-
文本显示:
- 遍历
input_text
中的每个字符。 - 将字符追加到
current_line
变量中。 - 如果字符属于
punctuation_marks
集合,则打印当前行(去掉首尾空格),然后重置current_line
为空字符串。 - 最后,如果
current_line
非空,则打印剩余的内容(如最后一行)。
- 遍历
-
这样应该更容易理解了吧!
打印🖨️二
/data/user/0/org.qpython.qpy/files/bin/qpy thon3.sh "/storage/emulated/0/qpython/标点 符号.py" && exit
/emulated/0/qpython/标点符号.py" && exit <
何苦呢?你得了幻想病,别再忽悠别人。撒谎吹 牛虽不上税,但吹多了,也会累死的呐!
# ꧂ ꧁
何苦呢?
你得了幻想病,
别再忽悠别人。
撒谎吹牛虽不上税,
但吹多了,
也会累死的呐!
#[QPython] Press enter to exit ...