1.请用列表编程,已知某基金公司持有的股票本周成交量如下:
[56200,73900,49600,67200,96000,47100,87500,101700,39500,23600]
对其中偶数下标的元素进行降序排列,奇数下标的元素不变,并输出处理后的列表内容。
x = [56200, 73900, 49600, 67200, 96000, 47100, 87500, 101700, 39500, 23600]
a = []
for i in range(len(x)):
if i % 2 == 0:
a.append(x[i])
a = sorted(a)
for i in range(len(a)):
x[i * 2] = a[i]
print(x)
2.给定列表x=["13915556234", "13025621456", "15325645124", "15202362459"],检查列表中的元素是否为移动手机号码,这里移动手机号码的规则是:手机号码共11位数字;以13开头,后面跟4、5、6、7、8、9中的某一个;或者以15开头,后面跟0、1、2、8、9中的某一个。
import re
x = ["13915556234", "13025621456", "15325645124", "15202362459"]
for i in x:
print(i, end="\t")
if re.match("^13[456789]", i) is None and re.match("^15[01289]", i) is None and len(i) == 11:
print("不是手机号")
else:
print("是手机号")
3.编写程序实现输入不小于0的数x作为一名员工一个月工资数额,求应交税款y并输出。设应交税款的计算公式如下:
x = float(input("请输入工资数:"))
y = 0
if x < 5000:
y = 0
elif x < 36000:
y = (x-5000)*0.03
elif x < 144000:
y = (x-5000)*0.1-2520
else:
y = (x-5000)*0.2-16920
print("应交税款 y =", y)
4.请字典编程,已知某商场营业员姓名和销售额如下:
姓名 | 销售额 | 姓名 | 销售额 |
张三 | 85000 | 付音 | 90000 |
李四 | 92000 | 肖敏 | 78000 |
徐进 | 45000 | 杜旭 | 76000 |
刘田 | 96000 | 董珊 | 62000 |
孙海 | 65000 | 赵维 | 87000 |
输出该商场营业员姓名和销售额,并求出全体营业员的人数和平均销售金额并显示。
x = {'张三': 85000, '付音': 90000,
'李四': 92000, '肖敏': 78000,
'徐进': 45000, '杜旭': 76000,
'刘田': 96000, '董珊': 62000,
'孙海': 65000, '赵维': 87000}
print("姓名 销售额")
sum = 0
for i in x:
print(i, x[i])
sum += x[i]
print("共有", len(x), "人")
print("平均销售额为", sum / len(x))
5、读取stock.csv文件的股票交易信息,在同一个图中绘制开盘价和收盘价历史走势的折线图,并分别赋以不同的颜色和线型,添加图例。输出结果如下图所示。
stock.csv
import csv
import matplotlib.pyplot as plt
import numpy as np
f = open('stock.csv', 'r')
y1 = []
y2 = []
reader = csv.reader(f)
for i in reader:
if(i[0]=='Date'):
continue
y1.append(eval(i[1]))
y2.append(eval(i[4]))
plt.plot(list(range(len(y1))), y1, 'g:',label = '开盘价')
plt.plot(list(range(len(y1))), y2, 'r-',label = '收盘价')
plt.legend(loc='lower right') #显示上面的label
plt.xlabel('时间顺序') # x_label
plt.ylabel('开盘价与收盘价') # y_label
plt.title('开盘价和收盘价历史走势') # 标题
plt.xlim((0, 40))
plt.ylim((8, 14))
plt.show()