- 博客(38)
- 收藏
- 关注
原创 day21-办公自动化:利用Python发邮件
Excel中绘制图表下载三方库openpyxlpip install openpyxlfrom datetime import datetimefrom openpyxlfrom openpyxl.chart import Reference, LineChartfrom openpyxl.cell.cell import cellfrom openpyxl.styles import Alignment, Front, Border, Sidedef display(value,
2021-10-18 19:22:53 270
原创 day19-继承和异常处理
输入的两个数字或者一个小数或者一个字符串,转换成分数输出def gcd(x, y): """求最大公约数""" while y % x != 0: x, y = y % x, x return x# 通过继承Exception自定义异常类型# 继承Exception类或者它的子类class FractionExcept(Exception): """自定义异常类型通常不需要写代码, 主要就是定义一种新的自定义的类型来标记特殊的异常状况,
2021-10-14 19:44:55 195
原创 day18-类:父类和子类
定义类描述平面上的点,提供移动点,计算一个点到另一个点的距离import mathclass Point: """平面上的点""" def __init__(self, x, y): """初始化方法 :param x: x坐标 :param y: y坐标 """ self.x = x self.y = y def move_to(self, x, y)
2021-10-13 20:16:56 360
原创 day17-csv、Excel的读写转换和面向对象编程
读取CSV文件import csv# utf-8-sig ---> 带签名的utf-8 ---> 有字节序标记with open('resource/2018年北京积分落户数据.csv', 'r', encoding='utf-8-sig') as file: # delimiter参数默认是逗号,但是如果值不是用逗号分隔的就要重新指定 # quotchar参数的默认值是引号,但是如果值不是用引号包围的就要重新指定 reader = csv.reader(file
2021-10-12 20:34:23 220
原创 day16-对象的序列化和反序列化
对象的序列化(serialization)和反序列化(deserialization)序列化:把一个对象(字典、列表等)变成字符串(str)或者字节串(bytes)反序列化:从字节串或字符串中还原一个对象(字典、列表等)Python标准库中有名为json/pickle 的模块,可以支持我们做序列化和反序列化操作JSON —> JavaScript Object Notation —> JavaScript 创建对象的字面量语法let person = { name: 'ljb'
2021-10-11 19:56:47 128
原创 day15-时间模块和文件操作
时间模块import time as tmfrom datetime import datetime, time, date, timedelta1.datetime1)获取当前时间t1 = datetime.now()print(t1, type(t1)) # 2021-10-09 09:42:26.864132 <class 'datetime.datetime'>t11 = datetime.today()print(t11) # 2021-10-09 09:4.
2021-10-09 22:45:37 101
原创 day14-装饰器和模块
装饰器 - 给已经写好的函数新增功能1.给函数添加功能import timefrom random import randintdef download(name): print(f'{name}开始下载') time.sleep(randint(1, 3)) print(f'{name}下载结束') download('《活着》')需求:增加功能:打印电影下载时长1.给函数新增功能方案一:直接修改原函数,把新增的功能加进去存在的问题:如果多个函
2021-10-08 19:43:41 86
原创 day13-迭代器和生成器
迭代器1.什么是迭代器(iter)迭代器是容器型数据类型创建迭代器:将其他序列转换成迭代器创建生成器特点:打印不能查看到迭代器中的元素不能通过len()获取迭代器中元素的个数如果要使用元素必须将元素从迭代器中取出来,而且取出来以后就无法放回i1 = iter('abc')print(i1) # <str_iterator object at 0x00000292B1C65580>i2 = iter([10, 20, 30, 40])print(i2)
2021-10-01 16:30:33 136
原创 day12-实参高阶函数作业
已经列表points中保存的是每个点的坐标(坐标是用元组表示的,第一个值是x坐标,第二个值是y坐标)points = [ (10, 20), (0, 100), (20, 30), (-10, 20), (30, -100)]以下问题使用实参高阶函数来解决1)获取列表中y坐标最大的点print(max(points, key=lambda item: item[-1]))2)获取列表中x坐标最小的点print(min(points, key=lambda item: item[0]..
2021-09-30 10:29:07 72
原创 day12-函数进阶
1.匿名函数匿名函数的本质还是海曙,但是匿名函数只能实现一句代码就能实现的功能语法:lambda 参数列表:返回值说明:lambda - 关键字;固定写法参数列表 - 普通函数写在()中的形参列表,至少要有一个参数: - 固定写法返回值 - 相当于普通函数return后面的值注意:匿名函数需要先保存才能调用sum1 = lambda x, y: x + yresult = sum1(10, 20)prin
2021-09-29 20:59:57 139
原创 day12-实参高阶函数作业
已经列表points中保存的是每个点的坐标(坐标是用元组表示的,第一个值是x坐标,第二个值是y坐标)points = [ (10, 20), (0, 100), (20, 30), (-10, 20), (30, -100)]以下问题使用实参高阶函数来解决1)获取列表中y坐标最大的点print(max(points, key=lambda f: f[-1]))2)获取列表中x坐标最小的点print(min(points, key=lambda f: f[0]))3)获取列表中距..
2021-09-29 19:44:46 76
原创 day11-函数基础作业
写一个函数,实现maketrans的功能,将两个字符串转换成一个字典,第一个字符串中的字符是键,第二个字符串中的字符是值第一个字符串: ‘abcmn’ 第二个字符串:‘一二三四五’结果:{‘a’: ‘一’, ‘b’: ‘二’, ‘c’: ‘三’, ‘m’: ‘四’, ‘n’: ‘五’}def maketrans(key_str: str, value_str: str) -> dict: """ 将两个字符串转换成一个字典,第一个字符串中的字符是键,第二个字符串中的字..
2021-09-29 10:26:48 91
原创 day11-函数基础作业
写一个函数,实现maketrans的功能,将两个字符串转换成一个字典,第一个字符串中的字符是键,第二个字符串中的字符是值第一个字符串: ‘abcmn’ 第二个字符串:‘一二三四五’结果:{‘a’: ‘一’, ‘b’: ‘二’, ‘c’: ‘三’, ‘m’: ‘四’, ‘n’: ‘五’}def maketrans(str1, str2)->dict: """ 将两个字符串转换成一个字典,第一个字符串中的字符是键,第二个字符串中的字符是值 :param str1:..
2021-09-28 20:41:48 100
原创 day11-函数基础
认识函数和定义函数1.认识函数概念:函数就是对实现某一特定功能的代码的封装 - 机器函数的分类系统函数(系统造好的机器) - 由Python创建好的函数,例如:print、input、type、max、min、id等自定义函数(自己造机器) - 由程序员自己创建的函数2.定义函数(创建函数)- 造机器语法:def 函数名(形参列表): 函数说明文档 函数体说明:def - 关键字;固定写法函数名 - 由程序员自己命名要
2021-09-28 19:03:45 158
原创 day10-字符串函数作业
编写一个函数,交换指定字典的key和value。 例如:dict1={'a':1, 'b':2, 'c':3} --> dict1={1:'a', 2:'b', 3:'c'} def swap_key_value(dict1): """ 交换指定字典的键和值(功能说明区) :param dict1: :param dist1:一个字典(参数说明区) :return:None(返回值说明区) """ new_dict = {..
2021-09-28 11:14:39 239
原创 day10-字符串函数作业
编写一个函数,交换指定字典的key和value。 例如:dict1={'a':1, 'b':2, 'c':3} --> dict1={1:'a', 2:'b', 3:'c'} def exchange_(dist1): new_dist = {value: key for key, value in dist1.items()} print(new_dist)dist1 = {'a':1, 'b':2, 'c':3}exchange_(dist1)编..
2021-09-27 23:05:39 100
原创 day10-字符串函数作业
编写一个函数,交换指定字典的key和value。 例如:dict1={'a':1, 'b':2, 'c':3} --> dict1={1:'a', 2:'b', 3:'c'} def exchange_(dist1): new_dist = {value: key for key, value in dist1.items()} print(new_dist)dist1 = {'a':1, 'b':2, 'c':3}exchange_(dist1)编..
2021-09-27 22:54:16 93
原创 day10-字符串
r语法在字符串的最前面加r或者R,可以让字符串中所有的转义字符的功能消失(每个符号逗号编程普通字符)str1 = r'C:\Users\name\test\demo.py'print(str1) # C:\Users\name\test\demo.py字符串格式化1.格式化字符串语法:包含格式占位符的字符串 % (数据1, 数据2, …)1)%s - 字符串占位符%s可以给任何类型的数据占位str1 = '%sxx' % '你'print(str1) # 你xxstr1 =
2021-09-27 19:17:03 124
原创 day9-字符串作业
输入一个字符串,打印所有奇数位上的字符(下标是1,3,5,7…位上的字符)例如: 输入**'abcd1234 ’ ** 输出**‘bd24’**str1 = 'abcd1234'print(str1[1::2])输入用户名,判断用户名是否合法(用户名长度6~10位)user_name = input('请输入用户名(6~10位):')if not 6 <= len(user_name) <= 10: print('用户名不合法')else: prin..
2021-09-27 17:34:21 148
原创 day9-字符串
字符串1.什么是字符串(str)字符串是容器型数据类型:将''/""/''''''/""""""作为容器的标志,里面直接是多个符号,每一个符号就是字符串的一个元素:‘元素1元素2元素3…’字符串不可变;字符串是有序的元素 - 所有的符号都可以作为字符串的元素,字符串中的元素又叫字符。字符分为普通字符和转义字符两种1)字符串的元素(字符)可以是任意符号str1 = 'sh三到四好【】[[;!423'print(str1) # sh三到四好【】[[;!4232)空字符
2021-09-26 19:53:27 498
原创 day9-字符串作业
输入一个字符串,打印所有奇数位上的字符(下标是1,3,5,7…位上的字符)例如: 输入**'abcd1234 ’ ** 输出**‘bd24’**str1 = 'abcd1234'print(str1[1::2])输入用户名,判断用户名是否合法(用户名长度6~10位)str2 = input('请输入用户名(6~10位):')if not 6 < len(str2) < 10: print('用户名不合法')else: print('用户名可用')..
2021-09-26 18:05:46 158
原创 day8-字典和集合作业
已知一个数字列表,统计偶数的个数[10, 34, 5, 65, 66, 89, 82]结果: 4nums = [10, 34, 5, 65, 66, 89, 82]new_num = [num for num in nums if num % 2 == 0]print(len(new_num))已知一个数字列表,计算所有元素的平均值[23, 34, 56, 9, 80]nums = [23, 34, 56, 9, 80]sum_1 = 0for i in num..
2021-09-26 10:58:38 48
原创 day8-集合和字符串-2021/9/25
1.字典不支持:+、*、<、>、<=、>=2.字典支持:==、!=3.in 和 not in键 in 字典 - 判断字典中是否存在指定的键d1 = {'a': 10, 'b': 20}, 'c': 30}print(30 in d1) # Falseprint('b' in d1) # True4.dict()dict(数据) - 将数据转换成字典数据的要求数据本身是一个序列序列中的元素必须是长度为2的小序列小序列的第一个元素必须是不可变的resu
2021-09-25 19:40:25 70
原创 day8-字典和集合作业
已知一个数字列表,统计偶数的个数[10, 34, 5, 65, 66, 89, 82]结果: 4nums = [10, 34, 5, 65, 66, 89, 82]new_num = [num for num in nums if num % 2 == 0]print(len(new_num))已知一个数字列表,计算所有元素的平均值[23, 34, 56, 9, 80]nums = [23, 34, 56, 9, 80]sum_1 = 0for i in num..
2021-09-25 18:32:18 51
原创 day7-字典和元组
元组(tuple)1.什么是元组元组是容器型数据类型(序列),将()作为容器的标志,里面多个元素用逗号隔开:(元素1, 元素2, 元素3, ...) # 元素:任何类型的数据元组不可变(不支持增删改)元组是有序的(支持下标操作)t1 = (10, 20, 30)print(t1, type(t1)) # (10, 20, 30) <class 'tuple'>t2 = (10, 'abc', False, [10, 230])print(t2) # (10,
2021-09-23 20:47:42 148
原创 day7-字典作业-2021/9/23
定义一个列表,在列表中保存6个学生的信息(学生信息中包括: 姓名、年龄、成绩(单科)、电话、性别(男、女、不明) )统计不及格学生的个数打印不及格学生的名字和对应的成绩统计未成年学生的个数打印手机尾号是8的学生的名字打印最高分和对应的学生的名字删除性别不明的所有学生将列表按学生成绩从大到小排序(挣扎一下,不行就放弃)information = [ { 'name': '赵一', 'age': '12', 'score': 89..
2021-09-23 19:54:37 369
原创 day6-列表相关
列表相关操作1.数学运算符:+、*列表1 + 列表2 - 将两个列表中的元素合并产生一个新的列表例如:[x, y, z] + [m, n] -> [x, y, z, m, n]列表 * N / N * 列表 - 列表中的元素重复N次产生一个新的列表nums1 = [10, 20, 30]nums2 = [1, 2]print(nums1+nums2)print(nums1 * 2)print(nums2 * 4)2.比较运算符:==、!=、>、<、<=、
2021-09-22 20:22:40 88
原创 day6-列表作业2--2021/9/22
1.创建一个列表,列表中有10个数字, 保证列表中元素的顺序,对列表进行排重,并对列表使用进行降序排序例如:随机生成了[70, 88, 91, 70, 107, 234, 91, 177, 282, 197] --- 去重之后 [70, 88, 91, 107, 234, 177, 282, 197] ---- 降序排序 [282, 234, 197, 177, 107, 91, 88, 70]nums = [70, 88, 91, 70, 107, 234, 91, 177, 282, 1
2021-09-22 18:50:32 409
原创 周末作业-循环练习题
判断101-200之间有多少个素数,并输出所有素数。from math import sqrtcount = 0for i in range(101, 201): x = int(sqrt(i)) for j in range(2, x+1): if i % j ==0: break else: count += 1 print(i, end=' ')print()print('有', count,.
2021-09-20 17:14:23 55
原创 第一周作业(零基础)
第一周作业一、选择题下列变量名中不合法的是?(C)A. abcB. NpcC. 1nameD ab_cd下列选项中不属于关键字的是?(B)A. andB. printC. TrueD. in下面哪个选项对应的代码写法是正确的?(C)A.print('Python') print('新手村')B.print('Python') print('新手村')C.print('Python')print('新手村')D.print('Python''新手
2021-09-20 14:49:38 52
原创 day5-列表作业 2021/9/20
1.已知一个数字列表,求列表中心元素。scores = [100, 90, 83, 92, 56, 78, 99, 67, 66, 95, 78]if len(scores) % 2: print(scores[len(scores) // 2])else: print(scores[len(scores) // 2 - 1], scores[len(scores) // 2])2.已知一个数字列表,求所有元素和。scores = [100, 90, 83, 92, 56, 78
2021-09-20 14:29:39 395
原创 day5-列表
列表列表是python自带的容器型数据类型,将[]作为容易的标志,里面多个元素用逗号隔开:[元素1, 元素2, 元素3, …]列表是可变的(支持增删改), 列表是有序的(支持下标操作)列表的元素:python中任何类型的数据都可以作为列表的元素同一列表中不同元素类型可以不一样a = 100list_1 = [10, 'abc', 12.5, True, 10>20, a ** 0.5, a == 20, [a, 10]]print(list_1)print(len(list
2021-09-20 13:20:25 153
原创 day4-while循环和循环关键字
while循环语法:while 条件语句: 循环体说明:while - 关键字;固定写法条件语句 - 任何有结果的表达式: - 固定写法循环体 - 和while保持一个缩进的一条或多条语句;需要重复执行的代码执行过程:先判断条件语句是否为True,如果为True就执行循环体执行完循环体再来判断条件语句是否为True,为True就再次执行循环体…直到判断条件语句的时候为False,整个循环就结束num = 0w
2021-09-17 22:30:51 175
原创 day3-分支和循环作业-2021/9/16
1. 基础题根据输入的成绩的范围打印及格 或者不及格score = int(input('输入成绩:'))if score >= 60: print('及格')else: print('不及格')根据输入的年纪范围打印成年或者未成年,如果年龄不在正常范围内(0~150)打印这不是人!。age = int(input('输入年龄:'))if 0 <= age <= 150: if age >= 18: print('成年'
2021-09-16 20:34:34 102
原创 day3-if语句和for循环
流程控制三种结构顺序结构(默认)分支结构(if)循环结构(for和while)if分支结构顺序结构print('how')print('are')print('you?')分支结构1. 单分支结构语法:if 条件语句: 代码段 if - 关键字;固定写法条件语句 - 可以是任何有结果的表达式,例如:数据、已经赋值过的变量、运算表达式、函数调 用表达式(注意!赋值语句不可以作为条件语句): - 固定写法代码段 - 和if保持一个缩
2021-09-16 18:33:44 332
原创 day2-运算符和变量作业-2021/9/15
选择题print(100 - 25 * 3 % 4) 应该输出什么? (B)A. 1B. 97C. 25D. 0下列哪种说法是错误的(D)。A. 除字典类型外,所有标准对象均可以⽤于布尔测试B. 空字符串的布尔值是FalseC. 空列表对象的布尔值是FalseD. 值为0的任何数字对象的布尔值是False下列表达式的值为True的是(B)。A. 3>2>2B. 1 and 2 != 1C. not(11 and 0 != 2)D. 10 < 20
2021-09-15 20:49:06 121
原创 Day2-Python变量和运算符
Python变量和运算符变量1.同时定义多个变量1)同时定义多个变量赋相同的值:变量名1 = 变量名2 = 变量名3 = … = 数据x = y = z = 0print(x, y, z)2)同时定义多个变量,赋不同的值变量名1, 变量名2, 变量名3, … = 数据1, 数据2, 数据3, …name, age, gender ='小明', 25, '男'print(name, age, gender)x, y, z = 12, 24, 36print(x, y, z)2
2021-09-15 19:23:16 170
原创 Day1-Python基本语法和变量
Python基础语法和变量python基础语法1.注释注释就是代码中不参与编译(解释)执行的部分,注释的存在不影响程序的功能注释在代码中的作用:对代码进行注解和说明(让程序员在读代码的时候更轻松)让程序功能消失1)单行注释快捷键:ctrl+/ - 在注释内容前加#(#后面最好有个空格)# 打印hello worldprint('hello world') # 打印hello world# 打印hello world2)多行注释将注释内容放在“”“ ”“”里面或
2021-09-14 20:11:02 210
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人