于熙顿 发表于 2021-8-6 09:51:49

新手求助(还是一样的问题)

def change(a, *b):
    for i in b:
      a = a - i
    return a
x = 100
price =
print(change(x, price))
这回我觉得并没有把整型与列表相减啊
但为啥还是报错了{:10_266:}

冬雪雪冬 发表于 2021-8-6 09:56:06

def change(a, b):

于熙顿 发表于 2021-8-6 09:56:58

冬雪雪冬 发表于 2021-8-6 09:56


啥意思

逃兵 发表于 2021-8-6 10:00:47

你把b打包了,b就成了()
for i in b →i=

def change(a, *b):
    print(b)
x = 100
price =
print(change(x, price))

冬雪雪冬 发表于 2021-8-6 10:07:53

于熙顿 发表于 2021-8-6 09:56
啥意思

定义函数参数加*的目的是可以输入不确定数量的多个参数,你这里只需要输入一个列表,不需要*

于熙顿 发表于 2021-8-6 10:11:23

那如果必须用不定长参数的话我的代码得怎么改才能正确呢?

大马强 发表于 2021-8-6 10:12:17

楼上大佬正解,你还可以这样
def change(a, *b):
    for i in b:
      a = a - i
    return a
x = 100
price =
print(change(x, price))
另外好好听课
https://static01.imgkr.com/temp/06c13185865840968bb53a82961d35b3.jpg

灰晨 发表于 2021-8-6 10:16:59

def change(a, *b):
    for i in b:
      a = a - i
    return a
x = 100
print(change(x, 8, 17, 22))
必须用不定长参数的话,像这样

于熙顿 发表于 2021-8-6 10:19:35

大马强 发表于 2021-8-6 10:12
楼上大佬正解,你还可以这样

另外好好听课

多谢{:10_254:}

于熙顿 发表于 2021-8-6 10:21:43

灰晨 发表于 2021-8-6 10:16
必须用不定长参数的话,像这样

明白了谢谢{:10_254:}
页: [1]
查看完整版本: 新手求助(还是一样的问题)