iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python中方法的缺省参数问题解读
  • 677
分享到

Python中方法的缺省参数问题解读

Python方法方法的缺省参数Python缺省参数 2022-12-19 15:12:31 677人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

目录python 中方法的缺省参数问题测试代码预期代码分析Python 缺省参数 不定长参数python 缺省参数不定长参数总结Python 中方法的缺省参数问题 在Python

Python 中方法的缺省参数问题

在Python中可以缺省给方法制定缺省值,但是这个缺省值在某些情况下确是和我们预期不太一致的…..。 这个诡异的问题,曾经困然了我几天时间,才最终定位出来…..

测试代码

from datetime import datetime
import time
def test(curdate=datetime.now()):
print(“The current Time:%s” % curdate.strftime(“%Y-%m-%d %H:%M:%S”))

for i in range(0,10):
time.sleep(2)
test()

预期代码分析

第一次预计其应该打印出不同的时间戳,因为datetime.now()每次的调用都会生成当前的时间点。 但是实际情况确实和这个不一样的….

直接上结果:

从输出的结果信息来看,每一次都是输出了相同的时间戳……..

小结:从结果来看,函数的反复调用中,只会反复使用第一次调用之时生成的那个缺省值,这个是我们在使用方法的缺省值之时需要注意的问题。

Python 缺省参数 不定长参数

python 缺省参数

# 缺省参数
# 1. 在定义函数的时候,给我们形参一个默认的数据,那这个形参就是缺省参数
# 2. 调用的时候,给缺省参传递参数默认值,使用的是传递的值
# 3. 在调用的时候,可以不传递数据值,那么使用的为默认值

def show_info(name="我家小丁永远",age= 18)
     print(name,age)
# 如果不给缺省参数赋值,那么输出的值就为"我家小丁永远 18"


show_info()
# 如果给缺省参数赋值,那么输入的结果为你所赋的值
show_info("我今年马上",20)

不定长参数

# 不定长参数  (*args   *kwargs)
#  *args  ,args可以写成其他变量如:a, b, c.但是建议使用args 
# *args是元祖类型(a, b, c), 最直接的特点就是: 可以使用 for in 遍历
# *args 不定长参数,可以接受位置传参

def show_info(*args)
     for i in args:
         print(i, "人生苦短,我用python", end=" ")
     print()

show_info(2)
# 接上  另外一种写法
def show_info(*args)
    print("人生苦短,我用Python", *args)

show_info("好好学习")
show_info("天天向上")

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: Python中方法的缺省参数问题解读

本文链接: https://www.lsjlt.com/news/175252.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作