向函数传递任意参数
我们都知道,Python 可以通过 *params
向函数传递任意多个参数。举个栗子:
def foo(*foods):
for food in foods:
print("I like %s!" % food)
foo("hamburger", "banana", "juice")
得到的结果:
I like hamburger!
I like banana!
I like juice!
向对象内的函数传递任意参数
今天在学习 Python 的对象时就想,对象能不能也传进任意个参数呢?
稍微试了一下,果然可以,和函数的方式差不多:
class Test:
def __init__(self, *list_test):
self.list_demo = list_test
def foo(self):
print(type(self.list_demo)) # 查看数据类型
print(self.list_demo) # 打印数据,看是否是我们想象中的元组
for item in self.list_demo:
print(item + "n") # 将元组的每个元素挨个打印出来
Test("aa", "bb", "cc").foo()
得到的结果,同样是一个元组:
<class 'tuple'>
('aa', 'bb', 'cc')
aan
bbn
ccn
参考文章:
① Python函数传入不定个数的参数
② 向函数传递不定数量的参数