首页 > 其他分享 >Day4

Day4

时间:2023-12-31 12:31:59浏览次数:25  
标签:name Day4 list 列表 num student avg

1.给定一个列表 list_1,里面嵌套了多个列表,请你计算出每个嵌套列表的最大值,并输出所有最大值的平均值。测试数据:[[54, 28, 88, 99, 77],[99, 6, 37, 68, 83],[90, 52, 36, 4, 53],[85, 66, 11, 11, 61],[20, 52, 9, 81, 61],[23, 67, 37, 39, 18],[21, 36, 66, 80, 30],[74, 80, 5, 7, 96],[30, 35, 71, 73, 4],[40, 67, 67, 11, 71]]

list_1 = eval(input())
# Please your code here
max_list = []   #空列表,后续把每个列表的最大值放进去,直接用sum求出列表的和
num = 0   #最大值的数量
for i in list_1:                  #[54, 28, 88, 99, 77]
    max = i[0]  #假定最大值是第一位,遍历列表找出最大值
    for j in i:
        if j > max:
            max = j
    num += 1
    max_list.append(max)
    # print(max)
# print(max_list)
# print(num)
sum_list = sum(max_list)  
avg = sum_list / num   #求平均值
avg_new = '{:.2f}'.format(avg)   #保留两位
print(avg_new)

2.给定一个列表 list_1,里面有且仅有一个数字出现奇数次,其他数均出现偶数次,请你找出这个数字并打印出来

# Get List
list_1 = eval(input())
# Please write your code here
for i in list_1:
    if list_1.count(i) % 2 != 0:  #lsit.count(),求特定元素出现的次数
        print(i)
        break       #满足条件即可跳出条件
    else:
        pass

3.设计一个函数 print_avg,这个函数接收多个关键字参数作为学生的信息,接收多个数字参数作为这个学生多次考试的成绩,请从学生信息中提取出学生的 student_namestudent_age,然后求出这个学生多次考试的平均成绩 Average(保留两位小数),返回一个字符串,格式如下:

name: student_name, age: student_age, avg: Average
输入:
关键字参数:
{'student_name': 'Kelsey', 'student_age': 18, 'underline': 'quality', 'heroine': 'hip', 'close': 'sponsor', 'howl': 'loss', 'profitable': 'finite', 'news': 'lonely', 'series': 'abroad', 'bet': 'approve', 'yet': 'button'}
数字参数:
[93, 52, 70, 76, 51, 61, 51, 89, 79, 71]

solution.py:

# Please write your code here
def print_avg(*num,**person):
    avg = sum(num) / len(num)
    student_name = person['student_name']
    student_age = person['student_age']
    return f"name: {student_name}, age: {student_age}, avg: {avg:.2f}"
num = [93, 52, 70, 76, 51, 61, 51, 89, 79, 71]
person = {'student_name': 'Kelsey', 'student_age': 18, 'underline': 'quality', 'heroine': 'hip', 'close': 'sponsor', 'howl': 'loss', 'profitable': 'finite', 'news': 'lonely', 'series': 'abroad', 'bet': 'approve', 'yet': 'button'}
print_avg(*num,**person)

4.读写改csv

import csv
file_path = 'data.csv'
name = 'Name'
new_name = 'student_name'
# 写入 CSV 文件
data = [
    ['Name', 'Age', 'Country'],
    ['Alice', '25', 'USA'],
    ['Bob', '30', 'Canada'],
    ['Charlie', '28', 'UK']
]
def get_write_csv(path:str):
    # Please write your code
    with open(path,'w',newline='') as f:  #写入原始数据
        # 使用列表推导式将嵌套列表展开为单层字符串列表
        #第一种#适用于字符串列表
        # flat_list = [' '.join(row) + '\n' for row in data]
        # f.writelines(flat_list)
        #第二种#支持二维列表,而且适用于数据量大的情况
        writer = csv.writer(f)
        writer.writerows(data)

    with open(path,'r') as f:   #读数据,并且替换Name为students_name
        lines=f.readlines()         #返回列表
        lines[0]=lines[0].replace('Name','students_name')
    with open(path,'w') as f:  #再把修改后的数据写入
        f.writelines(lines)
get_write_csv('data.csv')

下期单独出一版操作csv/excel

标签:name,Day4,list,列表,num,student,avg
From: https://blog.51cto.com/u_16383362/9047797

相关文章

  • Day41 二维数组
    二维数组多维数组多维数组可以看成是数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组。二维数组ina[][]=newint[2][5];以上二维数组a可以看成一个两行五列的数组。二维数组模型图示代码演练packagecom.baixiaofan.array;publiccla......
  • Day40 数组的使用
    数组的使用1.普通的for循环packagecom.baixiaofan.array;publicclassArrayDemo03{publicstaticvoidmain(String[]args){int[]arrays={1,2,3,4,5};//打印全部数组元素for(inti=0;i<arrays.length;i++){Sys......
  • JavaWebDay4
    一:maven什么是maven:maven是apache旗下的一个开源项目,是一款用于管理和构建Java项目的工具maven的作用:MAVEN项目的目录配置maven的环境的两种方法 导入meaven所写的exclusion应该在不想间接依赖的外面级写,比如a依赖b,b依赖c,那么不想要c的时候则在写依赖b的后面写ex......
  • 算法学习Day4两两交换,链表相交,环形链表
    Day4两两交换,链表相交,环形链表ByHQWQF2023/12/16笔记24.两两交换链表中的节点给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。解法:迭代法迭代法使用了虚拟头节点的技巧,迭代法代码class......
  • 冲刺day4
    1今日任务完成情况1.1功能整合今日最新功能已整合1.2完善整合证书功能将证书进行接入,确保证书可用。今日生成了测试使用的证书,存储公钥、私钥等信息,保障数据传输过程的数据安全。测试过程可以完成通过证书对传输的数据进行加密处理。1.3将证书接入SSL使用证书中的密钥......
  • 冲刺(day4)
    团队任务总结 一、团队成员任务分配为推动项目进展,团队今天共同完成了登录页面的设计与编码。以下是团队成员在页面开发中的任务分配和进展:张钰权:负责整体页面布局和样式设计,确保页面在不同设备上的良好显示。周绍坤:主要负责表单元素的设计和样式调整,提高用户体验,确保信息......
  • 谷粒商城-day4
    1、计算属性和侦听器     2、组件化基础  42、生命周期和钩子函数43、使用vue脚手架进行模块开发            44、整合element-ui快速开发               45、商品服......
  • Java Learning Day4 面向对象基础
    初始化顺序:默认初始化显示初始化构造器初始化(单参先执行)有内部类加载的话,在显式赋值之后,就进行新的加载 Static静态变量:静态成员变量属于类的,完全不需要创建对象使用。 private:同类中缺省:同一包中protected:不同包子类public:不同包 只有成员变量可以用权限修饰符......
  • Leetcode刷题day4-链表.交换.删除.相交.环
    24.两两交换链表中的节点24.两两交换链表中的节点-力扣(LeetCode)给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(只能进行节点交换)。示例1:输入:head=[1,2,3,4]输出:[2,1,4,3]示例2:输入:head=[]输出:[......
  • 代码随想录day4链表2
    day424.两两交换链表中的节点19.删除链表的倒数第N个节点面试题02.07.链表相交142.环形链表II总结资料来源:代码随想录(programmercarl.com)5.两两交换链表中的节点classSolution{private:/*data*/public:Solution(/*args*/);~Solution();......