当前位置:脚本大全 > > 正文

python怎么进行参数传递(在Python中如何传递任意数量的实参的示例代码)

时间:2022-01-14 02:13:43类别:脚本大全

python怎么进行参数传递

在Python中如何传递任意数量的实参的示例代码

1 用法

在定义函数时,加上这样一个形参 "*形参名",就可以传递任意数量的实参啦:

  • ?
  • 1
  • 2
  • 3
  • 4
  • def make_tags(* tags):
  •  '''为书本打标签'''
  •  print('标签:'+str(tags))
  • make_tags('艺术','艺术史')
  • 运行结果:标签:('艺术', '艺术史')

    形参名 *tags 中的星号会让 Python 创建一个名为 tags 的空元组, 并将函数所收到的所有值都封装在这个元组中 。

    注意:即便函数只收到一个值,也会被放入元组中。

    2 联合位置实参与任意数量实参

    如果要让函数接受多种类型的实参, 那就必须在函数定义中将接收任意数量实参的形参定义放在最后 。因为 Python 会先匹配位置实参和关键字实参, 然后再将多余的实参放入最后一个形参元组中 。

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • def make_tags(book_name, *tags):
  •  '''为某本书打标签'''
  •  print('book_name=' + book_name)
  •  print('tags=' + str(tags))
  • make_tags('世界美术名作二十讲 : 插图珍藏本','艺术')
  • make_tags('世界美术名作二十讲 : 插图珍藏本','艺术', '艺术史')
  • 运行结果:
    book_name=世界美术名作二十讲 : 插图珍藏本
    tags=('艺术',)
    book_name=世界美术名作二十讲 : 插图珍藏本
    tags=('艺术', '艺术史')

    3 任意数量关键字实参

    有时候,预先并不清楚传递给函数的会是什么样的参数。 这时, 我们就可以将函数编写成能够接受任意数量的键—值对。

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • def create_account(name, pwd, **others):
  •  '''创建账户'''
  •  account = {}
  •  account['name'] = name
  •  account['pwd'] = pwd
  •  for key, value in others.items():
  •  account[key] = value
  •  return account
  • account = create_account('早安', '1', sex='女', age='20')
  • print('account=' + str(account))
  • 运行结果:
    account={'name': '早安', 'pwd': '1', 'sex': '女', 'age': '20'}

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持开心学习网。

    原文链接:https://www.jianshu.com/p/3a67c148f526

    标签:
    上一篇下一篇

    猜您喜欢

    热门推荐