写函数,返回一个list中所有数字的和


In [3]:
numbers=[1,2,3,4,5,6,7,8,9,10]
total=0
i=0
for i in numbers:
    total+=i
print (total)


55

写函数,返回一个list中的最小值


In [4]:
numbers=[121,25,38,47,5,68,72,81,99,10]
min_num=10086
i=0
for i in numbers:
    if(i<min_num):
        min_num=i
print (min_num)


5

写函数,返回某个元素/对象在一个list中的位置,如果不在,则返回-1


In [5]:
numbers=[121,25,38,47,5,68,72,81,99,10]
n=int(input("plz input a num you want:"))
count=0

for i in numbers:
    count+=1

    if(i==n):
        print('No',count)
        break
    if(count>=len(numbers)):
        print ('-1')


plz input a num you want:38
No 3

写函数,可求两个向量的夹角余弦值,向量可放在list中。主程序调用该函数。


In [14]:
import math
def vector(i,j,n,m):
    print ((i*n+j*m) /(math.sqrt(i*i+j*j) + math.sqrt(n*n+m*m) ))
x1=int(input('plz input x1:'))
x2=int(input('plz input x2:'))
y1=int(input('plz input y1:'))
y2=int(input('plz input y2:'))
vector(x1,x2,y1,y2)


plz input x1:2
plz input x2:3
plz input y1:4
plz input y2:5
2.2980063616172774

挑战性习题:python语言老师为了激励学生学python,自费买了100个完全相同的Macbook Pro,分给三个班级,每个班级至少分5个,用穷举法计算共有多少种分法


In [17]:
a=5
b=5
c=100-a-b
count=0
for i in range(5,85):
    b+=i
    count +=1
for j in range(5,85):
    count +=1
print(count)


160