文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python基础实战总结

2024-04-02 19:55

关注

前言:

前几天有个叫【-berry】的粉丝在Python交流群里问了一道关于大学生Python题目的问题,如下图所示。

 

初步一看,还是觉得有点难的,对于刚学完基础的小伙伴来说,这个小项目还是有点难度,这个题目主要考察的是random库、列表、字典、open文件操作等基础操作,运用实际生活中的例子,确实是一个练手的好题目。

一、思路

其实问题的关键点就是在于构造姓名,学号和成绩,之后以字典的形式进行写入文件。这里准备两个列表,一个姓,一个名,之后使用random库进行随机字符串拼接,得到姓名。

二、解决方法

1)TXT文件存储

直接上代码,如下所示:


# !/usr/bin/env python 
# -*- coding:utf-8 -*- 
# @FileName  :test.py 
# @Time      :2021/9/19 21:34 
# @Author    :Cat 
 
import random 
 
xing = ['赵','钱','孙','李','周','吴','郑','王', 
'冯','陈','褚','卫','蒋','沈','韩','杨', 
'朱','秦','尤','许','何','吕','施','张', 
'孔','曹','严','华','金','魏','陶','姜', 
'戚','谢','邹','喻','柏','水','窦','章', 
'云','苏','潘','葛','奚','范','彭','郎', 
'鲁','韦','昌','马','苗','凤','花','方', 
'俞','任','袁','柳','酆','鲍','史','唐', 
'费','廉','岑','薛','雷','贺','倪','汤', 
'滕','殷','罗','毕','郝','邬','安','常', 
'乐','于','时','傅','皮','卞','齐','康', 
'伍','余','元','卜','顾','孟','平','黄', 
'和','穆','萧','尹','姚','邵','湛','汪', 
'祁','毛','禹','狄','米','贝','明','臧', 
'计','伏','成','戴','谈','宋','茅','庞', 
'熊','纪','舒','屈','项','祝','董','梁',] 
 
ming = [ 
       '凡','佳','勤','珍','贞','鸿','焕','风','朗', 
    '浩','亮','政','谦','振','壮','伟','刚','勇','毅','俊','峰','强','军','平','保','东','文','辉','力','固','之','段','殿','泰', 
'利','清','飞','彬','富','顺','信','子','杰','涛','昌','成','康','星','翰','诚','博','先','敬', 
'若','鸣','朋','斌','梁','栋','维','启','克','伦','翔','旭','鹏','泽','朗','伯','彪','晋','晟', 
'诚','先','敬','震','振','壮','会','思','群','豪','心','邦','承','乐','宏','言','旲','旻','昊', 
'光','天','达','安','岩','中','茂','进','林','有','坚','和','彪','博','泰','盛','振','挺','掣', 
'明','永','健','世','广','志','义','兴','良','海','山','仁','波','宁','行','时','志','忠','思', 
'绍','功','松','善','厚','庆','磊','民','友','裕','河','哲','江','超','炎','德','彰','征','律', 
'晨','辰','士','以','建','家','致','煜','煊','炎','波','宁','贵','福','生','龙','元','全','国', 
'胜','学','祥','才','发','武','新','利','清','飞','彬','富','顺','信','子','杰','涛','昌','成', 
'康','星','光','天','达','安','岩','中','茂','进','林','有','坚','和' 
] 
 
 
with open('students.txt', 'a', encoding='utf-8') as f: 
    for i in range(9): 
        item = {} 
        item['姓名'] = random.choice(xing) + random.choice(ming) 
        item['学号'] = str(2020010001 + i) 
        item['成绩'] = random.randint(0, 100) 
        f.write(str(item)) 
        f.write('\n') 


运行之后,得到的结果如下所示:

 

2)CSV文件存储

代码如下所示:


# !/usr/bin/env python 
# -*- coding:utf-8 -*- 
# @FileName  :test_csv.py 
# @Time      :2021/9/26 21:01 
# @Author    :Cat 
 
import random 
import csv 
 
 
headers = ['姓名', '学号', '成绩'] 
 
xing = ['赵','钱','孙','李','周','吴','郑','王', 
'冯','陈','褚','卫','蒋','沈','韩','杨', 
'朱','秦','尤','许','何','吕','施','张', 
'孔','曹','严','华','金','魏','陶','姜', 
'戚','谢','邹','喻','柏','水','窦','章', 
'云','苏','潘','葛','奚','范','彭','郎', 
'鲁','韦','昌','马','苗','凤','花','方', 
'俞','任','袁','柳','酆','鲍','史','唐', 
'费','廉','岑','薛','雷','贺','倪','汤', 
'滕','殷','罗','毕','郝','邬','安','常', 
'乐','于','时','傅','皮','卞','齐','康', 
'伍','余','元','卜','顾','孟','平','黄', 
'和','穆','萧','尹','姚','邵','湛','汪', 
'祁','毛','禹','狄','米','贝','明','臧', 
'计','伏','成','戴','谈','宋','茅','庞', 
'熊','纪','舒','屈','项','祝','董','梁',] 
 
ming = [ 
       '凡','佳','勤','珍','贞','鸿','焕','风','朗', 
    '浩','亮','政','谦','振','壮','伟','刚','勇','毅','俊','峰','强','军','平','保','东','文','辉','力','固','之','段','殿','泰', 
'利','清','飞','彬','富','顺','信','子','杰','涛','昌','成','康','星','翰','诚','博','先','敬', 
'若','鸣','朋','斌','梁','栋','维','启','克','伦','翔','旭','鹏','泽','朗','伯','彪','晋','晟', 
'诚','先','敬','震','振','壮','会','思','群','豪','心','邦','承','乐','宏','言','旲','旻','昊', 
'光','天','达','安','岩','中','茂','进','林','有','坚','和','彪','博','泰','盛','振','挺','掣', 
'明','永','健','世','广','志','义','兴','良','海','山','仁','波','宁','行','时','志','忠','思', 
'绍','功','松','善','厚','庆','磊','民','友','裕','河','哲','江','超','炎','德','彰','征','律', 
'晨','辰','士','以','建','家','致','煜','煊','炎','波','宁','贵','福','生','龙','元','全','国', 
'胜','学','祥','才','发','武','新','利','清','飞','彬','富','顺','信','子','杰','涛','昌','成', 
'康','星','光','天','达','安','岩','中','茂','进','林','有','坚','和' 
] 
 
 
with open('students.csv', 'a', encoding='utf-8', newline='') as f: 
    csv_writer = csv.DictWriter(f, headers) 
    csv_writer.writeheader() 
 
    for i in range(9): 
        item = {} 
        item['姓名'] = random.choice(xing) + random.choice(ming) 
        item['学号'] = str(2020010001 + i) 
        item['成绩'] = random.randint(0, 100) 
        csv_writer.writerow(item) 


运行之后,得到的结果如下所示:

 

每次运行程序之后,得到的txt和csv文件中的内容都是随机获取的,完成需求。

三、总结

我是Python进阶者。本文基于粉丝提问,完成了一道Python基础实战题目,主要涉及的知识点是random库、列表、字典、文件读取等知识。

到此这篇关于Python基础实战总结的文章就介绍到这了,更多相关Python基础实战内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯