一.list
1.脚本中有一个存放访问当前服务器的IP地址的列表 ip_adds = ["192.168.0.10","192.168.0.23"]
,工作过程中有一个新的终端"192.168.0.46"
接入服务器,请完成IP地址的追加;延后两分钟后又有两个终端["192.168.0.68", "192.168.0.70"]
接入服务器,请完成IP地址的追加;最后打印当前接入服务器的IP地址都有哪些
python">ip_adds=["192.168.0.10","192.168.0.23"]
ip=input()ip_adds.append(ip)
print(ip_adds)
2.有一个临时存放给用户下发邮件的地址列表 email_lst = ['admin@aliyun.com', 'mwb@openedu.com', 'damu@aliyun.com', 'laoliu@126.com', 'wang@openedu.com', 'xxy@openedu.com', 'px@openedu.com']
,这个列表中保存了最近10个下发邮件地址(有新的下发任务将地址添加到列表的头部,同时判断如果列表中邮件地址数量超过10个则删除列表中末尾的一个邮件地址);现需要依次给xiaoming@163.com、zhangxp@aliyun.com, wu@126.com, sunyp@openedu.com
发送消息,请按照需要将这些邮件地址添加到列表中,并打印最近发送邮件的地址列表信息
python">
email_lst = ['admin@aliyun.com', 'mwb@openedu.com','damu@aliyun.com', 'laoliu@126.com', 'wang@openedu.com','xxy@openedu.com', 'px@openedu.com']
new_emails=['xiaoming@163.com','zhangxp@aliyun.com', 'wu@126.com', 'sunyp@openedu.com']
for new_email in new_emails:#添加地址email_lst.insert(0, new_email)print(new_email)if len(email_lst)>10:email_lst.pop()
print(email_lst)
3.脚本中通过列表保存了当前公司服务器的存储信息(单位:TB) server_disks = [1, 2.6, 1.2, 0.8, 3]
,请将存储列表的信息转换成GB单位(1TB = 1024GB),最终打印存储信息
python">
server_disks=[1,2.6,1.2,0.8,3]
#列表推导式
new_server_disks=[i*1024 for i in server_disks]
print(new_server_disks)
4.脚本记录了服务器在最近3天的网络数据流量统计信息,每天分别统计了最大流量,最小流量,0-8|8-16|16-24点平均流量信信息:traffic_data = [ [300, 80, 120, 260,100], [280, 90, 100, 288, 90], [220, 70, 120, 240, 100]]
,请统计最近3天平均流量最高/最低是多少,最高流量峰值和最低流量保障是多少?
python">
traffic_data=[[300,80,120,260,100],[280,90,100,288,90],[220,70,120,240,100]]
average_traffic_day=[]
for i in traffic_data:#计算每天平均流量average=sum(i)/len(i)average_traffic_day.append(average)#找出每天最高平均流量
max_average_traffic=max(average_traffic_day)
min_average_traffic=min(average_traffic_day)
max_traffic=max([max(i) for i in traffic_data])
min_traffic=min([min(i) for i in traffic_data])
print(f"平均流量最高为:{max_average_traffic}")
print(f"平均流量最低为:{min_average_traffic}")
print(f"最高流量峰值为:{max_traffic}")
print(f"最低流量保障为:{min_traffic}")
5.公司后台服务器按照权重进行了数据服务的访问配置,根据主机名称进行了访问记录 access_record = ['data1', 'serv1', 'data1', 'serv2', 'serv1', 'data2', 'data1', 'serv3', 'data3', 'data1', 'serv1']
,请编写代码统计那个主机被访问次数最高
python">
access_record = ['data1', 'serv1', 'data1', 'serv2','serv1', 'data2', 'data1', 'serv3','data3', 'data1', 'serv1']
record_dict={}
count=0
for host in access_record:if host in record_dict:record_dict[host]+=1else:record_dict[host]=1
max_count=max(record_dict.values())
most_host=[host for host,count in record_dict.items() if count==max_count]
print(most_host)
二.set
1.项目部两个项目订阅使用了多个云服务cloud1 = {'HC(Huawei Cloud)', 'AWS(Amazon Web Service)', 'OC(Oracle Cloud)', 'MZ(Microsoft Azure)', 'GCP(Google Cloud Platform)'}, cloud2 = {'AC(Alibaba Cloud)', 'TC(Tencent Cloud)', 'HC(Huawei Cloud)', 'MZ(Microsoft Azure)', 'OC(Oracle Cloud)'}
,找出两个项目组使用的公共的云服务信息,方便后期进行整合管理。
python">
cloud1 = {'HC(Huawei Cloud)', 'AWS(Amazon Web Service)','OC(Oracle Cloud)', 'MZ(Microsoft Azure)','GCP(Google Cloud Platform)'}
cloud2 ={'AC(Alibaba Cloud)', 'TC(Tencent Cloud)','HC(Huawei Cloud)', 'MZ(Microsoft Azure)','OC(Oracle Cloud)'}
print(cloud1 & cloud2)
2.云计算平台上查询到一组服务serv_lst = ['ECX', 'CLOUD', 'CONTAINER', 'STORAGE', 'DB', 'NET', 'PERM', 'CONTAINER', 'DB', 'ECX', 'DB', 'PERM', 'NET', 'ECX', 'CLOUD', 'NET', 'PERM', 'PERM']
请将提取到的所有服务标签进行去重操作,并打印服务标签列表信息
python">
serv_lst = ['ECX', 'CLOUD', 'CONTAINER', 'STORAGE','DB', 'NET', 'PERM', 'CONTAINER', 'DB','ECX', 'DB', 'PERM', 'NET', 'ECX', 'CLOUD','NET', 'PERM', 'PERM']
#利用set去重
new_serv_lst=set(serv_lst)print(new_serv_lst)
3.脚本查询检测到最近时间段内的CPU使用率信息
t1 = [0.0, 0.0, 0.0, 0.0, 0.4, 0.0, 0.0, 1.9, 0.0, 0.0, 0.0, 0.0, 3.8, 3.7, 1.0, 0.1, 1.8, 0.2, 0.1, 4.4]; t2 = [0.0, 0.0, 0.0, 0.0, 1.2, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 3.6, 0.0, 1.2, 0.0, 1.2, 1.2, 0.0, 0.0]; t3 = [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 4.9, 2.9, 1.9, 0.0, 5.8, 1.0, 2.9, 0.0];
请找出这三个时间点上所有不同的CPU使用率值
python">t1 = [0.0, 0.0, 0.0, 0.0, 0.4, 0.0, 0.0, 1.9, 0.0, 0.0, 0.0, 0.0, 3.8, 3.7, 1.0, 0.1, 1.8, 0.2, 0.1, 4.4]t2 = [0.0, 0.0, 0.0, 0.0, 1.2, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 3.6, 0.0, 1.2, 0.0, 1.2, 1.2, 0.0, 0.0]t3 = [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 4.9, 2.9, 1.9, 0.0, 5.8, 1.0, 2.9, 0.0]
#利用set去重
all_values = t1 + t2 + t3
unique_values = list(set(all_values))
#用sort排序
unique_values.sort()print(unique_values)
4.有两个集合分别记录了服务器运行期间2天的错误信息f1 = {'power failure', 'disk error', 'network issue', 'network timeout'}, f2 = {'power failure', 'power holdon', 'disk locked', 'disk timeout', 'disk error'}
,请通过集合操作检查两天内发生的共同问题、两天内发生的差异性问题以及两天内的所有问题信息
python">
f1 = {'power failure', 'disk error', 'network issue', 'network timeout'}
f2 = {'power failure', 'power holdon', 'disk locked', 'disk timeout', 'disk error'}
#求交集
same_que=f1.intersection(f2)
#求差集
unique_day1=f1.difference(f2)
unique_day2=f2.difference(f1)
#求并集
all_que=f1.union(f2)
print(same_que)
print(all_que)
print(unique_day1)
print(unique_day2)
5.已知一个网络拓扑结构的列表 topologies = [('router1', ['switch1', 'switch2']), ('router2', ['switch3', 'switch4'])]
。创建一个集合,包含所有的交换机名称。
python">
topologies = [('router1', ['switch1', 'switch2']),('router2', ['switch3', 'switch4'])]
switch_set=set()
#for循环遍历,'_'占位符
for _, switch in topologies:switch_set.update(switch)
print(switch_set)
6.已知一个用户与所使用网络协议的字典 user_protocols = {'user1': ['TCP', 'UDP', 'TCP'], 'user2': ['ICMP', 'TCP']}
。创建一个集合,包含所有用户使用过的不同协议。
python">
user_protocols = {'user1': ['TCP', 'UDP', 'TCP'],'user2': ['ICMP', 'TCP']}
protocols_set=set()
for user, protocols in user_protocols.items():protocols_set.update(protocols)
print(protocols_set)