Python有参函数实战:生成随机验证码与动态进度条

桃夭
桃夭
发布时间:2026-10-13| 4人浏览过
原创

本文通过两个Python有参函数实例,详细演示了如何生成包含数字和字母的随机验证码,以及如何利用循环和字符串格式化实现动态进度条。代码涵盖chr()函数应用、随机数生成及时间计算,适合初学者参考学习。

Python有参函数实战:生成随机验证码与动态进度条

本文主要介绍Python中有参函数的具体应用,通过详细的代码示例帮助读者理解其用法,对学习和工作具有参考价值。

生成随机验证码的实现

示例1:设定验证码长度n,生成由数字和字母组成的随机验证码(需参考chr()内置方法)。

具体实现代码如下:


import random
def create_check_code(n):
  check_code = '' # 创建一个变量用以接收随机出来的验证码字符
  for i in range(n):
    asc_num = random.randint(48, 57) # 随机获取一个数字的ascii码
    asc_strlow = random.randint(97,122) # 随机获取一个小写字母的ascii码
    asc_strup = random.randint(65, 90) # 随机获取一个大写字母的ascii码
    check_code += random.choice(chr(asc_num)+chr(asc_strup)+chr(asc_strlow)) # 从上面随机出来的数字字母进行随机选择一个进行拼接
  return check_code
#
num = input('请输入你要创建的验证码的长度:')
check_code = create_check_code(int(num))
print(f'你创建的随机验证码是:{check_code}')

程序运行结果如下:


请输入你要创建的验证码的长度:6
你创建的随机验证码是:nPOcDU

动态进度条的绘制方法

示例2:打印进度条,图形效果参考下图,以下为参考实现代码。


#=========知识储备==========
#进度条的效果
[#       ]
[##      ]
[###      ]
[####     ]

#指定宽度
print('[%-15s]' %'#')
print('[%-15s]' %'##')
print('[%-15s]' %'###')
print('[%-15s]' %'####')

#打印%
print('%s%%' %(100)) #第二个%号代表取消第一个%的特殊意义

#可传参来控制宽度
print('[%%-%ds]' %50) #[%-50s]
print(('[%%-%ds]' %50) %'#')
print(('[%%-%ds]' %50) %'##')
print(('[%%-%ds]' %50) %'###')

编写代码如下:


import time
def progress_bar(n:int,style) :
  start = time.time()
  for i in range(1,n+1):
    time.sleep(0.2)
    end = time.time()
    print(f'\r{i/n*100:<6.2f}% [{style*i:<{n}}] {end-start:.2f}s',end='')

n = input('请输入你你要打印的进度条的长度:')
style = input('请输入你要打印的进度条样式:')
progress_bar(int(n),style)

运行效果如下:


请输入你你要打印的进度条的长度:10
请输入你要打印的进度条样式:*
100.00% [**********] 2.00s

以上内容为本文全部介绍,希望能为读者的学习提供有益帮助,同时也欢迎大家继续支持本站。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。