In [2]:
#写函数,返回一个list中所有数字的和
def a():
numbers =[2,3,4,6,7,3,5,4,8,2,9]
i=0
sum=0
for i in numbers:
sum=sum+i
i=i+1
return sum
print(a())
In [3]:
#写函数,返回一个list中的最小值
def a():
numbers=[2,34,5,6,7,23,67,10,9]
i=0
b=numbers[1]
for i in numbers:
if(b>i):
m=b
b=i
i=m
return b
print(a())
In [2]:
#写函数,返回某个元素/对象在一个list中的位置,如果不在,则返回-1
def a():
numbers=[2,3,5,7,9,45,60,6]
n=int(input("请输入一个元素:"))
for i in range(0,len(numbers)):
if n==numbers[i]:
m=1
break
else:
m=0
if m==1:
return i+1
else:
return -1
print(a())
In [3]:
#将前面几章用while循环的习题,用for循环实现,并尽量写成函数。
def compute_pro(end):
i = 1
factor_n = 1
for i in range(1,end):
i = i + 1
factor_n = factor_n*i
return factor_n
n = int(input('请输入第1个整数,以回车结束。'))
m = int(input('请输入第2个整数,以回车结束。'))
k = int(input('请输入第3个整数,以回车结束。'))
print(compute_pro(m) + compute_pro(n) + compute_pro(k))
In [24]:
#将前面几章用while循环的习题,用for循环实现,并尽量写成函数。
def compute_sum(end):
import math
n=0
i = 1
total_n = 0
for i in range(1,end):
total_n = total_n + 1/i*math.pow(-1,n)
i = i + 2
n=n+1
return total_n
print(compute_sum(1000))
print(compute_sum(100000))
In [3]:
#写函数,可求两个向量的夹角余弦值,向量可放在list中。主程序调用该函数
def a(x,y):
if(len(x)!=len(y)):
print('error input,x and y is not in the same space')
return
result1=0.0
result2=0.0
result3=0.0
for i in range(len(x)):
result1+=x[i]*y[i]
result2+=x[i]**2
result3+=y[i]**2
print(result1/((result2*result3)**0.5))
a([2,7],[6,3])
In [4]:
#python语言老师为了激励学生学python,自费买了100个完全相同的Macbook Pro,分给三个班级,每个班级至少分5个,用穷举法计算共有多少种分法?
x=0
for i in range(5,85):
for j in range(5,85):
for k in range(5,85):
if(i+j+k==100):
x=x+1
print (x)
In [ ]: