python程序编写

1.一系列资产的回报率分别是4.5%,6.5%,3.5%,6.3%,7.2%,8.4%。存储在列表中,使用循环来判断回报率大于5%的资产分别是第几个。
2.利用随机函数random生成两组代表一个月内两支股票价格的数据,使用数组存储,并分别计算其均值和方差。(麻烦在重要步骤后写上注释**)

第一个循环进行判断就行


l=[0.045,0.065,0.035,0.063,0.072,0.084]
for i in range(len(l)):
    if l[i]>0.05:
        print(i,end= " ")

img

第二个


import random
l1=[]
x1=10
l2=[]
x2=100
sum1=0
sum2=0
for i in range(30):
    f=random.uniform(-0.1, 0.1)
    x1=float(x1*(1+f))
    l1.append(x1)
    sum1+=x1
for i in range(30):
    f=random.uniform(-0.1, 0.1)#股票最大一天跌涨10%
    x2=float(x2*(1+f))
    l2.append(x2)
    sum2 += x2#求和
m1,m2=sum1/30,sum2/30
s1=0
s2=0
for i in range(30):
    s1+=(l1[i]-m1)*(l1[i]-m1)#求方差
    s2 += (l2[i] - m2) * (l2[i] - m2)
print(sum1/30,sum2/30)
print(s1/30,s2/30)

img

#1
a = [0.045, 0.065, 0.035, 0.063, 0.072, 0.084]
res=[a.index(x)+1 for x in filter(lambda x:x>0.05,a)]
print('大于5%的位置:',*res)
#2
import random
import numpy as np
arr1=np.array([random.uniform(1,100) for i in range(30)])#构造30个1-100的随机分布数,下同
arr2=np.array([random.uniform(1,100) for i in range(30)])
print(arr1.mean(),arr1.var())#分别使用numpy数组函数均值函数和均方差函数,下同。
print(arr2.mean(),arr2.var())