关于自己写min()的问题
本帖最后由 Python初学者8号 于 2021-8-11 16:07 编辑算了,我这么说吧,如题,辗转相除法求最大公约数
def gcd(x,y):
returnc, d = x // y,x % y ;print('{0}/{1}={2}......{3}'.format(x,y,c,d))
gcd(1999,615)
我想要在函数执行之后,完成赋值并且打印的操作,我这个代码是打个比方,我知道是错的,我就是想问有没有这样的操作{:10_266:} Python初学者8号 发表于 2021-8-11 16:08
我重写了 哥
嗯,知道你很辛苦又重写了一遍需求
然,还是没明白你的意思
def gcd(x,y):
c,d = x // y,x % y
print('{0}/{1}={2}......{3}'.format(x,y,c,d))
return (c,d)
gcd(1999,615)
一般 ,我们不在函数内部print输出 除非你是为了调试一些什么东西 没看明白你想干嘛 wp231957 发表于 2021-8-11 11:40
没看明白你想干嘛
能完成比较运算的话,的话就算出最小值然后还打印出来那句话 Python初学者8号 发表于 2021-8-11 11:46
能完成比较运算的话,的话就算出最小值然后还打印出来那句话
你直接将return minn替换成 print ('the minimum number of the parameter is {0}'.format(minimum(minn)))不就可以了... 2012277033 发表于 2021-8-11 11:51
你直接将return minn替换成 print ('the minimum number of the parameter is {0}'.format(minimum(mi ...
我运行了一下,试错的{:10_277:} 看不明白 Python初学者8号 发表于 2021-8-11 12:06
我运行了一下,试错的
..我直接复制的,没仔细看{:10_282:}
应该是这样
print ('the minimum number of the parameter is {0}'.format(minn)) 老迈 发表于 2021-8-11 12:09
看不明白
我重写了,哥 2012277033 发表于 2021-8-11 12:09
..我直接复制的,没仔细看
应该是这样
不不不,我重写了需求,哥 wp231957 发表于 2021-8-11 11:40
没看明白你想干嘛
我重写了 哥 Python初学者8号 发表于 2021-8-11 16:08
我重写了 哥
如果你是想看一下 辗转相除法的运作过程,我给你写了一个,你看一下 Python初学者8号 发表于 2021-8-11 16:08
我重写了 哥
所以简化一下,辗转相除最后应该是:
def gcd(x,y):
if x<y: x,y=y,x
if x % y ==0: return y
return gcd(y,x%y)
print(gcd(999,6165))
这属于判断对象类型的问题,一般用 isinstance(),
通常可以结合字典做一个通用统计函数,统计各类型出现的次数,如
>>> ls = ['a', 1, 2, 'c']
>>> def hist(ls):
cf = dict()
for i in ls:
if isinstance(i, str):
cf['str'] = cf.setdefault('str', 0) + 1
elif isinstance(i, int):
cf['int'] = cf.setdefault('int', 0) + 1
return cf
>>> hist(ls)
{'str': 2, 'int': 2}
>>>
# 这样你就很方便调用 cf 来判断了,如
>>> cf = hist(ls)
>>> if cf['str'] > 0 and cf['int'] > 0:
print("既有字符串,又有整数,你准备如何处理?")
pass
既有字符串,又有整数,你准备如何处理?
>>>
wp231957 发表于 2021-8-11 16:15
嗯,知道你很辛苦又重写了一遍需求
然,还是没明白你的意思
懂了,所以无法在return写太多的东西了{:10_266:} wp231957 发表于 2021-8-11 16:30
如果你是想看一下 辗转相除法的运作过程,我给你写了一个,你看一下
我也在用jupyter哈哈
你写的好快啊,而且还多了一个大小判断,很全面!!
还有这个第二个return很牛逼,我想到了这点,但是我不会用这个东西,这个是叫递归调用还是闭包来着,我没搞懂这个东西,也没去碰他
感谢你的帮助!!{:10_254:} 阿奇_o 发表于 2021-8-11 16:40
这属于判断对象类型的问题,一般用 isinstance(),
通常可以结合字典做一个通用统计函数,统计各类型出现 ...
你的isinstance提醒了我还有这个东西在,这个东西真好用啊!!
十分感谢你的解答,不过我的需求是想知道return可不可多放几个句子进去(比如print语句),但是你的回答还是对我有很大的帮助,感谢感谢{:10_254:} Python初学者8号 发表于 2021-8-11 17:20
我也在用jupyter哈哈
你写的好快啊,而且还多了一个大小判断,很全面!!
自己调用自己叫递归
函数里面嵌套函数(名字不一样)这是闭包 wp231957 发表于 2021-8-11 18:07
自己调用自己叫递归
函数里面嵌套函数(名字不一样)这是闭包
很经典的案例,感谢大哥的帮助!{:10_254:}
页:
[1]