python中设计函数 python设计函数判断闰年

python设计递归函数,求两个数的最大公约数

def common_data(a, b, sub_common):

创新互联建站专注于东西湖企业网站建设,成都响应式网站建设公司,商城网站建设。东西湖网站建设公司,为东西湖等地区提供建站服务。全流程按需定制网站,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务

if sub_common == 1:

return sub_common

else:

k1 = a % sub_common

k2 = b % sub_common

if k1 == k2 == 0:

return sub_common

else:

sub_common = sub_common - 1

return common_data(a, b, sub_common)

上面就是定义了一个递归函数求最大公约数

a = 16

b = 12

c = common_data(16,12,12) # 前两个参数就是需要求最大公约数的两个数,第三个参数就是那两个数中较小的那个数, 返回值就是最大公约数

用python写一个函数

使用关键词 def 声明这是一个函数

1def 函数名 (参数):

2 语句块

参数可以没有,也可以有多个,用逗号隔开,第一行称为函数头,结尾一定要加冒号,代表开始进入函数体的执行。

语句块也就是函数体,是关于这个函数要实现的功能的语句,语句要有返回值即return语句,如果没有return语句,就代表return none.

用python设计函数 输入一个2维列表 用该函数计算每一列的和并返回一个列表

#!/usr/bin/python

# -*- coding:utf-8 -*-

# @Time    : 2018/6/10 15:00

# @File    : Sum_List.py

"""

输入一个2维列表 用该函数计算每一列的和并返回一个列表

"""

def sum_each_colum(olist):

"""

计算多维数字数组每列的和,并作为一个列表的元素,最后返回这个列表

:param olist:

:return:slist

"""

slist = []

if isinstance(olist, list):

slen = len(olist[0])

for i in range(slen):

s = 0.0

for temp in olist:

if isinstance(temp[i], (int, float)):

s += temp[i]

else:

return u'不是数字,无法求和'

else:

slist.append(s)

else:

return slist

else:

return u'输入与要求不符'

if __name__ == '__main__':

alist = eval(raw_input(u'请输入一个多维数字的列表[[1,2],[3,4]]:'))

print sum_each_colum(alist)

Python的函数和参数

parameter 是函数定义的参数形式

argument 是函数调用时传入的参数实体。

对于函数调用的传参模式,一般有两种:

此外,

也是关键字传参

python的函数参数定义一般来说有五种: 位置和关键字参数混合 , 仅位置参数 , 仅关键字参数 , 可变位置参数 , 可变关键字参数 。其中仅位置参数的方式仅仅是一个概念,python语法中暂时没有这样的设计。

通常我们见到的函数是位置和关键字混合的方式。

既可以用关键字又可以用位置调用

这种方式的定义只能使用关键字传参的模式

f(*some_list) 与 f(arg1, arg2, ...) (其中some_list = [arg1, arg2, ...])是等价的

网络模块request的request方法的设计

多数的可选参数被设计成可变关键字参数

有多种方法能够为函数定义输出:

非常晦涩

如果使用可变对象作为函数的默认参数,会导致默认参数在所有的函数调用中被共享。

例子1:

addItem方法的data设计了一个默认参数,使用不当会造成默认参数被共享。

python里面,函数的默认参数被存在__default__属性中,这是一个元组类型

例子2:

在例子1中,默认参数是一个列表,它是mutable的数据类型,当它写进 __defauts__属性中时,函数addItem的操作并不会改变它的id,相当于 __defauts__只是保存了data的引用,对于它的内存数据并不关心,每次调用addItem,都可以修改 addItem.__defauts__中的数据,它是一个共享数据。

如果默认参数是一个imutable类型,情况将会不一样,你无法改变默认参数第一次存入的值。

例子1中,连续调用addItem('world') 的结果会是

而不是期望的


名称栏目:python中设计函数 python设计函数判断闰年
分享网址:http://scyanting.com/article/dosiece.html