python实战编程小案例-----更新中
入门小案例
- 数字的阶乘
- 圆的面积
- 打出区间里面的素数
- 求前N个数字的平方和
- 计算列表数字的和
- 列表去重
- 简单对列表排列:sort,sorted:
- 怎样实现学生成绩的排序 拉姆达 lambda
- 读取文件
- 对文件数据进行排序
- 计算 短文中出现最多的英文单词
- 获取单个文件大小
- 根据文件类型将文件进行分类
- 递归搜索目录找出最大的文件
- 处理文件的最高分最低分
code templates
# -*- coding: utf-8 -*-
#可可爱爱小七月
数字的阶乘
import mathdef get_jiecheng(number):result = 1while number > 0:result *= numbernumber -= 1return resultprint("jiecheng 3=", get_jiecheng(6))
圆的面积
def circle_area(r):# 只保留两位小数,round函数是python中的内置函数,四舍五入return round(math.pi * r * r)print("area of 4 is:", circle_area(2))
打出区间里面的素数
def is_prime(i):if i in (1, 2):return Truefor idx in range(2, i):if i % idx == 0:return Falsereturn Truedef print_prime(begin, end):# for inrange 遍历for i in range(begin, end + 1):if is_prime(i):print(f"{i}是一个素数")begin = 11
end = 25
print_prime(begin, end)
求前N个数字的平方和
def pingfang(n):sum = 0for number in range(1, n + 1):sum += number * numberprint(f"前{n}个数字平方和{sum}")pingfang(4)
pingfang(5)
pingfang(3)
pingfang(10)
计算列表数字的和
def sum_of_list(param_list):total = 0for i in param_list:total += ireturn totallist1 = [1, 2, 3]
list2 = [1, 2, 3]input=[12, 23, 45]
print("input列表数字的和", sum_of_list(input))
print("input列表数字的和", sum(input))
列表去重
# 去重列表a = [1, 1, 4, 4, 5, 7, 8]
def quchong(b):c = []for item in b:if item not in c:c.append(item)return cprint(f"原始列表:{a}, 去重后列表:", quchong(a))
简单对列表排列:sort,sorted:
默认情况下,sort和sorted都会根据list[0](或者tuple[0])作为排序的key,进行排序。
#简单对列表排序d = [5, 8, 3, 45, 32, 566]
#sort改变原数组,默认升序
#d.sort(reverse=True):是否颠倒,True,是(降序)
d.sort()
#sorted返回一个新数组
#e = sorted(d, reverse=True)
e = sorted(d)
print(f"原来的列表变为:{d}, 返回新列表为:{e}")
怎样实现学生成绩的排序 拉姆达 lambda
Lambda
表达式是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象,是一个匿名函数,即没有函数名的函数。Lambda表达式可以表示闭包。
而且Lambda表达式非常好用,可以让代码简单、简洁。
Lambda表达式与函数def的区别:
def创建的方法是有名称的,而Lambda表达式没有,可以立刻传递;Python
Lambda表达式会创建一个函数对象,但不会把这个函数对象赋给一个标识符,而def则会把函数对象赋值给一个变量。Python
Lambda只是一个表达式,def是一个语句。Lambda表达式运行起来像一个函数,当被调用时创建一个框架对象。Lambda能够出现在Python语法不允许def出现的地方。Lambda表达式“:”后面,只能有一个表达式,def则可以有多个。Lambda表达式内部只能包含一行代码,而命名函数内对此无限制。
Lambda表达式可以直接作为Python列表或Python字典的成员,返回Lambda表达式中最后一个表达式的值。
#怎样实现学生成绩的排序
#复杂列表,元素是字典或者元组
stu = [{"sno": 101, "sname": "校长", "sgrade": 88},{"sno": 102, "sname": "校长2", "sgrade": 98},{"sno": 103, "sname": "校长3", "sgrade": 68},{"sno": 104, "sname": "校长4", "sgrade": 78}
]
students_sort = sorted(stu, key=lambda x: x["sgrade"])print(f"原始学生列表为{stu}")
#升序
print(f"升序排序后列表为: {students_sort}")
# 降序,拉姆达:key=lambda x: x["sgrade"],x代表列表中每一个元素, x["sgrade"]元素中某一个key
students_sort = sorted(stu, key=lambda x: x["sgrade"], reverse=True)
print(f"降序排序后列表为: {students_sort}")
读取文件
新建一个.txt文件
#读取成绩文件的排序数据
#输入文件:
# 学号、姓名、成绩
# 读取文件 排列数据 写出文件
def read_file():result = []#finwith open("./student_grade_input.txt") as ff:for line in ff:# 每行去掉末尾换行符,剩下的赋值给lineline = line[:-1]result.append(line.split(","))return resultdatas = read_file()
print(f"read_file:", datas)
对文件数据进行排序
# 对文件数据进行排序def compute_score():result = []# 打开文件with open("./student_grade_input.txt") as fin:for line in fin:# 删除空格line = line[:-1]# 分隔符加入列表【】fields = line.split(",")result.append(int(fields[-1]))max_score = max(result)min_score = min(result)avg_score = round(sum(result) / len(result), 2)return max_score, avg_score, min_scoremax_score, avg_score, min_score = compute_score()
print(f"max_score:{max_score},avg_score:{avg_score},min_score:{min_score}")
计算 短文中出现最多的英文单词
#计算 短文中出现最多的英文单词
word_count = {}
with open("English.txt", encoding='UTF-8') as fin:for line in fin:line = line[:-1]words = line.split()for word in words:if word not in word_count:word_count[word] = 0word_count[word] +=1print(f"words:{word_count}")
#开始排序
word_countnew = sorted(word_count.items(), key=lambda x: x[1], reverse=True)[:10]
# word_count.sort()
print(f"words:{word_countnew}")
获取单个文件大小
import os
#获取文件大小字节为单位
print(os.path.getsize("English.txt"))
#遍历path为当前目录下所有文件,os.listdir返回的可能是目录,所以要判断是否是文件
sum_size = 0
for file in os.listdir("."):if os.path.isfile(file):print(file)sum_size += os.path.getsize(file)
#字节转KB
print("all file of dir:", sum_size/1000)
根据文件类型将文件进行分类
# -*- coding: utf-8 -*-
# 可可爱爱小七月
import os
import shutildir = "./arrage_dir"
# 遍历模块所有文件 dir显示文件列表;os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表。
for a in os.listdir(dir):#获取后缀名ext = os.path.splitext(a)[1]ext = ext[1:]#如果没有这个文件目录if not os.path.isdir(f"{dir}/{ext}"):os.mkdir(f"{dir}/{ext}")source =f"{dir}/{a}"target =f"{dir}/{ext}/{a}"#移动文件位置,shell utilityshutil.move(source, target)print(a, ext)
递归搜索目录找出最大的文件
# -*- coding: utf-8 -*-
# 可可爱爱小七月
import os
#目录(当前目录下的文件夹,),子目录(当前目录下的文件夹的文件夹),当前目录下的普通文件(当前目录下的文件夹的文件和当前目录下的文件)
#递归搜索目录找出最大的文件
#输出所有文件 获取文件大小 放进列表中 [1]倒序排序
search_dir = "d:\FreeIME_ths"
result_files = []
for a, b, c in os.walk(search_dir):print(f"{b}")for file in c:if file.endswith(".txt"):file_path = f"{a}/{file}"print(f"{file_path}")result_files.append((file_path, os.path.getsize(file_path)))
print(sorted(result_files,key=lambda X:X[1],reverse=True)[:10])
处理文件的最高分最低分
# -*- coding: utf-8 -*-
# 可可爱爱小七月
#记录每个课程的最高分\最低分\平均分
course_grade = {}with open("student_grade_input.txt", encoding="utf-8") as fin:for line in fin:line = line[:-1]course, sno, name, grade = line.split(",")if course not in course_grade:course_grade[course] = []#添加列表course_grade[course].append(int(grade))
print(course_grade)
#成绩的数目len(grade)
for course, grade in course_grade:print(course,min(grade),max(grade),sum(grade) / len(grade))
python实战编程小案例-----更新中相关推荐
- Python函数式编程小案例:文本加密
问题描述:编写函数,接收一个文本和一个密钥字符串,实现文本加密和解密,要求使用异或算法,如果文本比密钥字符串长的话就循环使用指定密钥. 参考代码: 运行结果: ----------相关阅读------ ...
- python程序实例教程基础-编程小案例
编程小案例 本小节实现一个通讯录管理程序,通过这个案例来融会贯通之前所学习的知识,该程序使用到如下知识点: 条件选择 循环 列表 字典 键盘输入 屏幕输出 编写程序 addr-manage.py 实现 ...
- python与人工智能编程-总算明白python人工智能编程入门案例
Python是非常简洁的一种脚本语言,写同样的程序,代码量仅为java的三分一,除了性能没有Java强之外,它的优点还是相当多的.以下是小编为你整理的python人工智能编程入门案例 下载Active ...
- Python语言编程学习:numpy中的array格式数据切片与pandas中的dataframe格式数据切片、相互转换
Python语言编程学习:numpy中的array格式数据切片与pandas中的dataframe格式数据切片.相互转换 目录 numpy中的array格式数据切片与pandas中的dataframe ...
- 《Python计算机视觉编程》一书中关于增强现实茶壶显示的程序
大家好,我是第一次写CSDN博客,也是刚开始学习用Python进行计算机视觉编程,有很多不懂和不足的地方,希望大家多包涵.以下纯粹是我个人的一些实际操作经历. 在<Python计算机视觉编程&g ...
- python实际案例分析_将python运用到实际案例分析中(第四关作业)
将python运用到实际案例分析中(第四关作业) 本章节主要分为两个部分,一是理解数据分析,二是分析销售数据案例析销售数据案例 一.理解数据分析 此处又分为一维数据分析.二维数据分析 一维数据分析用N ...
- Python练习题__目录(更新中。。。)
Python练习题__目录 人生有时真的很无助,特别是当社会走向了极端,当我们一无所知地憧憬着美好的未来时,却不知原本属于我们生来就拥有的一切,会被某些...暗中窥视后强行夺走(亲人.健康.技术.生命 ...
- Python:通过一个小案例深入理解IO多路复用
通过一个小案例深入理解IO多路复用 假如我们现在有这样一个普通的需求,写一个简单的爬虫来爬取校花网的主页 import requests import timestart = time.time()u ...
- python课程编程题汇总(中)
python编程题汇总 众所周知,由于疫情的原因,大家都在上网课,我也不例外啦~ 用这个贴子来记录也和大家分享一下我们课上的编程讨论题 上篇在这→python课程编程题汇总(上) 下篇在这→pytho ...
最新文章
- dedecms arclist中截取字符串的方法
- poj 2728(最小比率生成树)
- loglevel python 不输出_Python 通过 Celery 框架实现分布式任务队列!
- 敏捷需求分析及深度提升(广州 2014.1.11)- 活动报道
- 【C++】C++类的学习(二)——构造函数、析构函数、拷贝构造函数以及this指针
- 支持所有库的python手机编程-入坑 Python 后强烈推荐的一套工具库
- 2020年10月DB-Engines排行:商业开源平分秋色 并驾齐驱四大天王
- php调用成员函数错误,PHP致命错误:在非对象上调用成员函数exec...
- 劝说语合理使用计算机,用一句名言来劝说家长让孩子接触计算机
- 赛尔号对战c语言程序,秘密军事会议 赛尔号9月10日攻略
- 2021互联网秋招,有哪些值得投的好公司?
- 老师教我们用计算机画画就是彩虹,一年级上课文
- 【独行秀才】macOS Monterey 12.2.1正式版(21D62)原版镜像
- python 英语翻译_python中英文翻译模块
- 枚举(2) : No enum constant xxx
- 啥是HTTPS,通俗易懂的解释
- USACO 2012 January Contest, Silver Division Solution
- 基于WT2003H语音芯片在GPS公交车自动报站系统的应用设计方案
- 【python】request HTTPS代理
- 使用 json 进行谷歌浏览器自动化测试
热门文章
- JavaScript 基础入门
- 渗透测试工具之——HP WebInspect安装与使用
- WebInspect快速启动(中文翻译版)
- TCP协议的RST标志
- dbNSFP:非同义突变功能注释数据库
- 计算机毕业设计SSM电子病历系统【附源码数据库】
- Arduino使用TM1650四位数码管模块
- 2020年上海市高等学校信息技术水平考试试卷_三级_数据科学技术及应用_模拟卷_四、操作题_答案
- 陶瓷工厂的进销存管理系统的设计与实现
- ggplot2-堆积柱形图????