Python几行代码就能实现的特效,读者见过吗?

运用Python制作进度条,动态随机符号、商场推荐商品的显示屏

前言

这是小编自己通过看书和理解做出来的一些Python特效,希望读者喜欢,不过只有第一个程序代码只有几行,后面最多十多行。

在这里插入图片描述

1.完成特效需要的Python模块

完成这些特效需要的Python模块只需要三个即可,即time模块、random模块和 sys模块。
time模块:主要用time.sleep()方法,里面的参数是休眠的秒数;
random模块:主要用
random.random()
方法和 random.randrange() 方法,其中,第一个方法是用来产生0~1的随机数,然后将这个随机数乘以10取整用来得到随机长度的字符串。
sys模块:用到sys.stdout.flush()sys.stdout.write() 方法,其中第一个方法是用来刷新输出内容的,第二个方法是用来写入内容的。

2.制作Python进度条

首先,读者先看一下运行结果吧!
运行结果:

应用Python制作进度条


这个是小编三个里面最简单的一个代码,通过看小编在上方写的模块介绍,读者应该可以看懂吧!
实现代码:

import time  #导入时间模块
import sys

for i in range(1,51):
    sys.stdout.write('\r')
    sys.stdout.write('{0}% |{1}'.format(int(i%51)*2,int(i%51)*'■')) #标准输出
    sys.stdout.flush() # 刷新
    time.sleep(0.125)  # 休眠0.125秒
sys.stdout.write('\n')
3.应用Python制作随机长度的随机字符串(动态效果)

运行结果:

应用Python制作随机长度的随机字符串(动态效果)

实现代码:
为什么实现代码就是这样,上面有这些方法的讲解,代码有一些注释,如果读者还不理解,可以改变一下下面的代码,自己动手操作,相信读者可以更加理解

import time,sys,random  #导入时间模块,sys模块,随机模块

str1=''
for i in range(15+int(random.random()*10)):  # 产生的随机字符的个数
    for j in range(int(random.random()*10)): # 产生的循环次数为随机数
        str2=chr(random.randrange(65,123))
        sys.stdout.write('\r')
        sys.stdout.write('|{}'.format(str1+str2))
        sys.stdout.flush()  # 起刷新作用
        time.sleep(random.random())   # 休眠时间也为随机
    str1+=str2   # 加上上次的随机字符
4.应用Python制作商场推荐商品的显示屏(动态效果)

运行结果:

应用Python制作商场推荐商品的显示屏


实现代码:

import time,sys  #导入时间模块,sys模块

str1=input('请输入一段字符串(至少长度为15):');str3=str1[:15]

for i in range(len(str1)+1):
    num=len(str3)
    if i!=0:
        num=1
    for j in range(num):
        sys.stdout.write('\r')
        if i!=0:
            sys.stdout.write('|{}'.format(str3[:]))
        sys.stdout.write('|{}'.format(str3[:j]))
        sys.stdout.flush()  # 起刷新作用
        time.sleep(0.5)
    try:
        str3=str3[1:]+str1[str1.find(str3[-1])+1:str1.find(str3[-1])+2]
    except:
        pass

如果大家还想要更好的显示效果,可以看我的这篇文章喔!应用tkinter制作商场推荐商品的显示屏

5.总结

这是小编花费了一下午的努力,如果大家觉得我的这篇文章写的还可以,记得点赞,谢谢!同时,如果大家对于这个程序代码有什么优化的想法,欢迎在下方留言。

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

坚持不懈的大白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值