网站建设资讯

NEWS

网站建设资讯

python函数题怎么做,python函数编程题

关于python程序设计题的题库?

1、average_sum函数的功能为求一批数中大于平均值

目前成都创新互联已为千余家的企业提供了网站建设、域名、虚拟主机、网站改版维护、企业网站设计、喀左网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

sum=0

k=0

for i in range(n):

sum=sum+a[i]

average=sum/n

for i in range:

if(a[i]average):

k=k+a[i]

return k

2、编写函数fun求一个不多于五位数的正整数的位数

if(m9999):

place=5

elif(m999):

place=4

elif(m99):

place=3

elif(m9):

place=2

else:

place=1

return place

3、请编fun函数,求4*4整形数组的主对角线元素的和

sum=0.0

for i in range(4):

sum+=a[i][i]

return sum

4、已知:一元钱一瓶汽水,喝完后两个空瓶换一瓶汽水。问:请输入钱数(大于1的正整数),则根据钱数最多可以喝到几瓶汽水。

s=0

k=0

while m0:

m=m-1

s=s+1

k=k+1

while k=2:

k=k-2

s=s+1

k=k+1

return s

5、编写函数fun(x,y),函数的功能是若x、y为奇数,求x到y之间的奇数和;若x、y为偶数,则求x到y之间的偶数和。要求必须使用for结构。

主函数的功能是分别计算如下的值:

(1+3+5+……+777)+(2+4+6+……+888)=???

(1+3+5+……+1111)+(2+4+6+……+2222)=???

(1+3+5+……+1999)+(2+4+6+……+1998)=???

s=0

for i in range(x,y+1,2):

s=s+i

return s

6、编写函数main 求3!+6!+9!+12!+15!+18!+21!

s=0

for i in range(3,22,3):

r=1

for j in range(1,i+1):

r*=j

s+=r

print(s)

Python编程题怎么写?

Python编程题写法:第一个问题使用排序算法,有很多种,可以使用简单一点的冒泡排序。第二个问题为了确保是输入了5个整数,可以使用while循环+try。

假设data.txt中所有的号码都在一行,没有换行,写入到data_asc.txt中时,假设每行一个,原文件中是否有换行;写入到data_asc.txt文件中时,是一行一个;还是所有的都在一行,然后用英文逗号隔开。

Python

是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python支持重载运算符和动态类型。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了Haskell和Standard ML中久经考验的函数式程序设计工具。

求一道Python题,是关于定义函数和身体指数的,谢谢各位大神啦!!!

按照题目要求编写的Python程序如下

def calBMI(height,weight):

BMI=weight/(height*height)

if BMI18.5:

return [BMI,"过轻"]

elif BMI24:

return [BMI,"正常"]

elif BMI28:

return [BMI,"过重"]

else:

return [BMI,"肥胖"]

import re

s=input("请输入你的身高(米)和体重(公斤)【逗号隔开】:")

s1=re.split(r'[,,]',s)

height=float(s1[0])

weight=float(s1[1])

name="李子健"

bmi=calBMI(height,weight)

print("{}的测算结果为:".format(name))

print("BMI:%.2f"%bmi[0])

print(bmi[1])

源代码(注意源代码的缩进)

这个python题目怎么写?

无意间,看到这么一道Python面试题:以下代码将输出什么?

def testFun:

temp = [lambda x : i*x for i in range(4)]

return temp

for everyLambda in testFun:

print (everyLambda(2))

脑中默默一想,这还用说么,肯定是:

2

4

6

最后一看答案,竟然是:

6

6

6

6

于是带着怀疑的心态(其实是不服输,不认错),打开编辑器,快速一敲,果然是:

怀疑了人生半天,本来还想黑,WTF Python…然后才想通是自己太生疏......

最后发现原因竟是:Python 的闭包的后期绑定导致的 late binding。

这意味着在闭包中的变量是在内部函数被调用的时候被查找,所以当任何testFun 返回的函数被调用,i 的值是在它被调用时的周围作用域中查找。

也就是说无论哪个返回的函数被调用,for 循环都已经完成了,i 最后的值是 3,因此,每个返回的函数 testFun 的值都是 3。

因此一个等于 2 的值被传递进以上代码,它们将返回一个值 6 (比如:3 x 2)。

究竟如何才能实现出这样的结果呢?

2

4

6

想了想,若能立即绑定参数,或者直接不用闭包总该行吧,用另一种方式避免 i 的改写。

回忆了之前所学知识,最后酝酿出了四种解决方案。

第一种:创建一个闭包,通过使用默认参数立即绑定它的参数

def testFun:

temp = [lambda x, i=i: i * x for i in range(4)]

return temp

for everyLambda in testFun:

print(everyLambda(2))

第二种:使用functools.partial 函数,把函数的某些参数(不管有没有默认值)给固定住(也就是相当于设置默认值)

from functools import partial

from operator import mul

def testFun:

return [partial(mul, i) for i in range(4)]

for everyLambda in testFun:

print(everyLambda(2))

第三种:优雅的写法,直接用生成器

def testFun:

return (lambda x, i=i: i * x for i in range(4))

for everyLambda in testFun:

print(everyLambda(2))

第四种:利用yield的惰性求值的思想

def testFun:

for i in range(4):

yield lambda x: i * x

for everyLambda in testFun:

print(everyLambda(2))

最终运行结果:

有了解决方案后,又陷入了怀疑自己,这个题目究竟是考察的是什么?是在考面试者闭包相关知识以及Python 的闭包的后期绑定问题么?

若将题目改成:以下代码输出的结果是(0,2,4,6)么?如果不是,你将会怎么做,让它变成(0,2,4,6)?这样会不会更有意思点呢?欢迎大家出妙招,看究竟有多少招?(哈哈哈!!!)

python怎么编写函数

在python中,定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后在缩进块中编写函数体,函数的返回值用return语句返回

def 函数名([参数1,参数2,...,参数n]):

函数体

函数代码以def关键词开头,后接函数标识符名称和圆括号():

任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数

函数的第一行语句可以选择性的使用文档字符串-用于存放函数说明

函数内容以冒号起始,并且缩进

return[表达式]结束函数,选择性的返回一个值给调用方,不带表达式的return相当于返回None

python练习题怎么做?

stds_list= [

{"id": 1, "name": "小明", "c_s": 85, "python_s": 78},

{"id": 2, "name": "小花", "c_s": 69, "python_s": 88},

{"id": 3, "name": "小东", "c_s": 79, "python_s": 83},

]

# 1) 显示学生信息:“学生id:学生姓名:小明,C语言成绩:85, Python成绩:78”。

for ind in range(len(stds_list)):

if stds_list[ind]['name'] == '小明':

print('学生id:{id},学生姓名:{name},C语言成绩:{c_s}, Python成绩:{python_s}'.format(**stds_list[ind]))

# 2) 修改“小明”的Python成绩为90

for ind in range(len(stds_list)):

if stds_list[ind]['name'] == '小明':

stds_list[ind]['python_s'] = 90

break

# 3) 删除“小东”的信息

for ind in range(len(stds_list)):

if stds_list[ind]['name'] == '小东':

del stds_list[ind]

break

# 2. 定义一个空列表,用于保存5个学生信息,一个学生信息包括三个属性:id、姓名、年龄

# 提示:列表元素是字典、向列表中添加数据用append()

stds_list2 = []

for i in range(5):

print('第{}个学生信息:')

stds_list2.append({})

for j in ['id','姓名','年龄']:

stds_list2[-1][j] = input('{}:'.format(j))

print(stds_list2)

代码缩进


分享文章:python函数题怎么做,python函数编程题
网页地址:http://cdweb.net/article/dseohhh.html