Python实例解析-- 软文的诗词风

来自CloudWiki
跳转至: 导航搜索

问题分析

软文的诗词风,将原有文章根据标点符号重新切分成短句,并居中排版,对小屏幕阅读十分有利。使用程序将普通文章变成软文的诗词风,十分有趣,这是本实例的主要功能。

算法设计

这个例子中通过调用两个函数,来完成软文的切分和软文的打印,将难题化解、从而降低了编程的难度。

输入数据

处理数据

输出数据

代码:

# Example_5_1.py
txt = '''
人生得意须尽欢,莫使金樽空对月。天生我材必有用,千金散尽还复来。
'''
txt='''三国演义 上卷 罗贯中   滚滚长江东逝水,浪花淘尽英雄。是非成败转头空。青山依旧在,几度夕阳红。 白发渔樵江渚上,惯看秋月春风。一壶浊酒喜相逢。古今多少事,都付笑谈中。 --调寄《临江仙》 第一回  宴桃园豪杰三结义  斩黄巾英雄首立功 话说天下大势,分久必合,合久必分。周末七国分争,并入于秦。及秦灭之后, 楚、汉分争,又并入于汉。汉朝自高祖斩白蛇而起义,一统天下,后来光武中兴, 传至献帝,遂分为三国。 '''

txt = input("请输入需转化的软文:")
linewidth = 30  # 预定的输出宽度

def lineSplit(line):
    plist = [',', '!', '?', ',', '。', '!', '?']
    for p in plist:
        line = line.replace(p, ' ')
    return line.split()
    
def linePrint(line):
    global linewidth
    print(line.center(linewidth, chr(12288)))

if __name__ ="__main__":

    newlines = lineSplit(txt)
    for newline in newlines:
        linePrint(newline)
  • Unicode 12288是汉字中的空格,这个空格与汉字同宽。

练习

例:计算平方和

如下函数返回两个数的平方和,请补充横线处代码‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬

def psum(___①___):
   ___②___ a**2 + b**2

a=eval(input())
b=eval(input())
print(psum(a,b))​

例:汇率计算器

def DolConvert(Num):
    Num =eval(Num);
    Dollar =Num /6;
    return Dollar
    
            
Num = input("请输入人民币值: ")
result = DolConvert(Num)
print("能兑换的美元为:",result)

例: BMI判断

BMI = eval(input("请输入您的BMI值:"))
if BMI<18.5:
    print("您的体型有点瘦")
elif BMI<24.5:
    print("您的体型正常")
elif BMI<26:
    print("您的体型偏胖")
else:
    print("您的体型严重偏胖")

print("测试结束!")