![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
文章平均质量分 54
花花绿绿小妖怪
这个作者很懒,什么都没留下…
展开
-
day15-正则表达式
1.什么是正则表达式正则表达式是让复杂的字符串处理变得更加简单的工具from re import fullmatch2.正则语法fullmatch(正则表达式, 字符串) - 判断指定的字符串是否满足正则表达式描述的规则,如果不满足返回Nonepython中正则表达式是写到单引号或者双引号里面,例如:‘正则表达式’;js中正则表达式是放在两个/之间的,例如:/正则表达式/普通字符普通字符指的是正则表达式中除了特殊符号以外的符号都是普通字符普通字符在正则中表示这个符号本身。. - 匹原创 2021-03-01 20:51:20 · 120 阅读 · 1 评论 -
day15-异常捕获
1.什么是异常程序运行的时候报错了,我们程序出现了异常2.异常捕获目的:当程序出现异常的时候,程序不崩溃还可以接着执行后面的代码什么时候需要捕获:明明知道某个地方会出现异常,但是代码没有问题(用户的不当操作),这个时候就可以使用异常捕获语法1: - 捕获所有类型的异常try:代码段1except:代码段2finally:代码段3说明:try、except - 关键字;固定写法代码段1 - 需要捕获异常的代码代码段2 - 捕获到异常后会执行的代码执行原创 2021-03-01 20:30:51 · 114 阅读 · 1 评论 -
day14-数据持久化
1.文件上下文with open() as 文件对象:文件上下文(可以操作文件的位置)with open(’./合同’, encoding=‘utf-8’) as f:f.read()f.read()2.数据持久化的方法数据持久化需要做到以下3点:1)创建文件保存需要持久数据2)在程序中每次需要这个数据,不直接赋值而是从文件中去读取它的值3)在程序如果修改了这个数据的值,需要将这个最新的值更新到文件中# 练习1:在程序中用一个数据来保存当前程序启动的次数,并且打印次数# 1 - 获取原创 2021-03-01 20:07:59 · 123 阅读 · 1 评论 -
day13-文件操作
1.数据持久化(数据本地化)默认情况下程序中所有的数据都是保存在运行内存中的,运行内存中的数据在程序运行结束后会自动销毁。只要将数据存储在硬盘中,数据才会一直存在。如果想要将程序中产生的数据保存到硬盘中,需要先将数据存储到文件中。(常见的文件:数据库文件、plist文件、json文件、txt文件…)2.文件操作 - 操作文件中的内容基本步骤:打开文件 -> 操作文件(读、写) -> 关闭文件a. 打开文件open(file, mode=‘r’,*,encoding原创 2021-03-01 20:02:11 · 75 阅读 · 0 评论 -
day13-python中常用的模块
1.工作中:1)os模块 - 文件操作系统(主要提供文件和文件夹相关操作)listdir(目录地址) - 返回指定目录下所有文件的文件名result = os.listdir('./files')print(result)2)sys模块 - 系统相关操作, 例如:exit() - 结束线程3)json模块 - json数据数据处理(后面讲)4)re模块 - 正则表达式相关操作(后面讲)5)math模块ceil(浮点数) - 将浮点数转换成整数(向大取整)原创 2021-03-01 19:53:38 · 128 阅读 · 1 评论 -
day12 map和reduce函数作业
已经两个列表A和B,用map函数创建一个字典,A中的元素是key,B中的元素是valueA = ['name', 'age', 'sex']B = ['张三', 18, '女']新字典: {'name': '张三', 'age': 18, 'sex': '女'}A = ['name', 'age', 'sex']B = ['张三', 18, '女']result = map(lambda x,y:(x,y),A,B)print(dict(result))已经三个列表分别表示5个学生.原创 2021-02-03 20:58:19 · 193 阅读 · 5 评论 -
day12 模块和包
一、模块1.模块:一个py文件就是一个模块,文件名就是模块名模块命名必须是标识符且不是关键字python中可以在一个模块中使用另外一个模块2.导入模块1)直接导入模块import 模块名 - 导入指定模块,导入后需要通过 ‘模块名.xxx’的形式取使用模块中内容import testprint(test.a)test.func1()print(test.name)2)直接导入模块中的变量from 模块名 import 变量名1,变量名2,··· -导入指定模块中的指定变量;导入原创 2021-02-03 20:57:35 · 84 阅读 · 0 评论 -
day12 map和reduce函数
一、map1.map用法一:map(函数,序列) - 将原序列中的元素,按照函数给定的标准转换成新的序列函数的要求:a.是一个函数b.有一个参数(指向后面的这个序列中的元素)c.需要一个返回值(返回值就是新序列中的元素)# 用法一:获取nums中所有元素的个位数,产生一个新的列表nums = [19, 78, 66, 51, 34, 98, 22]result = map(lambda item: item % 10, nums)print(list(result))2.map用原创 2021-02-03 20:47:23 · 124 阅读 · 0 评论 -
day11 函数作业2
写一个匿名函数,判断指定的年是否是闰年func1 = lambda x:x%4==0 and x%100 != 0 or x%400==0写一个函数将一个指定的列表中的元素逆序( 如[1, 2, 3] -> [3, 2, 1])(注意:不要使用列表自带的逆序函数)func2=lambda list1:list1[-1::-1]print(func2([1,2,3]))写一个函数,获取指定列表中指定元素的下标(如果指定元素有多个,将每个元素的下标都返回)例如: 列表是:[1,..原创 2021-02-02 19:00:54 · 106 阅读 · 1 评论 -
day11 函数进阶
一、全局变量和局部变量根据变量作用域(能使用的范围)的不同将变量分为:全局变量和局部变量1. 全局变量没有定义在函数里面或者类里面的变量都是全局变量、全局变量的作用域是从定义开始到程序结束全局变量可以在函数里直接用2.局部变量定义在函数里面的变量就是局部变量。局部变量的作用域是从定义开始到函数结束形参也是局部变量# 全局变量示例1a = 20if True: print(f'if语句中:{a}')for _ in range(3): print(f'循环中:{a}')原创 2021-02-02 19:00:08 · 89 阅读 · 3 评论 -
day10 函数
一、函数函数:函数就是对实现某一特定功能的代码的封装(就相当于具有某种功能的机器)系统函数:由系统python创建的函数就是系统函数,程序员只需要在这个函数功能的时候使用函数自定义函数:由程序员自己创建的函数,就是自定义函数语法:def 函数名(形参列表):函数说明文档函数体说明:def 、()、冒号 - 固定写法函数名 - 程序员自己定义;标识符,不是关键字;见名知义(看到函数名,大概知道函数的功能)形参列表 - 以’变量名1,变量名2,变量名3,···’形原创 2021-02-01 20:23:53 · 72 阅读 · 0 评论 -
day09 字符串相关方法
一、 字符串.zfill在指定字符串前添加0到指定长度,num = 3result = str(num).zfill(4)print(result) # 0003result = f'{num:0>4}'print(result) # 0003二、split -切割字符串1.split(字符串) -将字符串1中所有的字符串2作为切割点,对字符串1进行切割。返回列表str1 = 'abcd213213abjkljbjklmn'result = str1.split('原创 2021-02-01 20:14:27 · 51 阅读 · 0 评论 -
day10 函数作业
编写一个函数,交换指定字典的key和value。 # 例如:dict1={'a':1, 'b':2, 'c':3} --> dict1={1:'a', 2:'b', 3:'c'}def change_dict(dict1={}): result = dict(zip(dict1.values(),dict1.keys())) return resultdict1={'a':1, 'b':2, 'c':3}print(change_dict(dict1))编写一..原创 2021-02-01 20:05:21 · 103 阅读 · 1 评论 -
day09 序列基础练习题
列表基础练习题选择题下列选项中能正确表示一个列表的是(D)。A.{1, 2, 3}B.[10, abc, 123]C. [10 20 30]D.[1, 2, 3](多选)已知一个列表nums = [10, 20, '小明', [1, 2]],以下表达式结果是小明的是?(CD)A. nums[-3]B. nums[3]C.nums[-2]D. nums[2]以下选项关于列表说法错误的是?(C)A. 列表可以放在for循环的in后面B. 列表是可变的序列C. 列表原创 2021-01-29 16:48:54 · 220 阅读 · 0 评论 -
day08 集合
一、集合集合是序列,可以转换成列表,将{}作为容器的标志,里面多个元素用逗号隔开:{元素1,元素2,元素3···}可变的,无序元素的要求:不可变的数据,唯一的空元组没有意义x = {} # 空字典s1 = set() # 空集合print(type(s1), len(s1))# 元素不可变s2 = {10, True, 'abc', (1, 2)}# s2 = {10,True,'abc',[1,2]} 报错print(s2)# 集合无序print({1, 2, 3} ==原创 2021-01-28 21:31:57 · 61 阅读 · 0 评论 -
day08 字符串
一、字符串字符串是容器(序列),将’’、’’’ ‘’’、”“” “”“ 作为容器的标志在引号中的每一个符号都是字符串的元素(字符串的元素又叫字符)字符串不可变,凡是感觉像是在改变字符串的操作,其实是创建新的字符串,原来的字符串不可变有序的字符串的元素(字符):通过任何手段可以放入引号中的符号都可以是字符串的元素,黄脸表情都可以放进去。放不进去是你的问题,不是python的问题#'' 和" " 表示没有区别str1='abc'str2="abc"print(id(str1),id(str2)原创 2021-01-28 21:21:12 · 87 阅读 · 0 评论 -
day08 元组
“”"一、 元组元组是容器(序列),将()作为容器的标志,里面多个元素用逗号隔开:(元素1,元素2,元素3)不可变的元组,增删改都不支持,只可查有序的(下标相关操作都支持)元素的要求和列表一样:元组就是不可变的列表t1 = (10, 20)print(t1, type(t1))查 列表获取元素的方法元组都支持t2 = ('周一', '周二', '周三', '周四', '周五', '周六', '周天')print(t2[1])print(t2[-1])print(t2[2:]原创 2021-01-28 21:13:11 · 89 阅读 · 0 评论 -
day08 字符串作业
输入一个字符串,打印所有奇数位上的字符(下标是1,3,5,7…位上的字符)例如: 输入**'abcd1234 ’ ** 输出**‘bd24’**str1 = input('请输入一个字符串')print(str1[1::2])输入用户名,判断用户名是否合法(用户名长度6~10位)str2 = input('请输入用户名')if not 6 <= len(str2) <= 10: print('用户名不合法')else: print('用户名合法')..原创 2021-01-28 21:01:22 · 102 阅读 · 0 评论 -
day07 列表和字典作业
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]import randomlist1=[]for x in range(10): li原创 2021-01-27 20:59:29 · 151 阅读 · 0 评论 -
day07 字典
一 、dict字典是容器型数据类型,将{}作为容器的标志,里面多个元素(元素都是键值对) 用逗号隔开{键1:值1,键2:值2,键3:值3,…}注意:字典保存数据,其实是想要保存的是值,键的作用是对值进行区分和说明的。字典可变(支持增删改);字典是无序的(不支持下标操作)字典的元素 -必须是键值对键 - 必须是不可变的数据(一般使用字符串)、唯一的值 - 任何类型的数据都可以,可以重复{} 是空字典dict1 = {}print(dict1, type(dict1))dict2 =原创 2021-01-27 18:12:10 · 81 阅读 · 1 评论 -
day07列表 第二弹
一、列表生成式 推导式 -->创建列表的一种字面量语法#comprehensiona = [x for x in range(1,101)]b = [x for x in range(2,101,2)]c = [x for x in range(1,101) if x %3 ==0 or x % 5 == 0]d = [x<<1 for x in range(1,11)]print(c)print(d)应用1. 序列变换成列表str1 = 'abc'list1 =原创 2021-01-27 17:59:26 · 76 阅读 · 0 评论 -
day06 列表应用
列表应用1.产生随机数import randomfs=[0]*6 #for _ in range(6000): face = random.randint(1,6) fs[face-1]+=1 for i in range(1,7): print(f'{i}点出现了{fs[i-1]}次')2. 列表生成式 推导式 -->创建列表的一种字面量语法#comprehensiona = [x for x in range(1,101)]b = [x for x原创 2021-01-26 21:04:41 · 75 阅读 · 0 评论 -
day5-列表作业
1.已知一个数字列表,求列表中心元素。# 1list = [21, 312, 4143, 54, 56, 645, 2, 4, 3, 523, 55]if len(list) & 1: print(list[ int((len(list)-1) /2)])else: print(list[int((len(list) -1)/ 2)]) print(list[int(len(list)/2 )])2.已知一个数字列表,求所有元素和。list = [21, 312原创 2021-01-25 19:50:15 · 274 阅读 · 0 评论 -
day05列表笔记
一 、列表列表是容器型数据类型,将[]作为容器标志,里面多个元素用逗号隔开里面的元素是数据就行,任何python支持的类型的数据都可以作为列表元素,同一个列表的元素的类型可以不同列表是可变的,元素的个数,值,顺序可变列表是有序的,每个元素有固定位置信息–下标,从0开始赋值语句没有结果,不能作为列表的元素查1. 获取单个元素语法:列表[下标]下标又叫索引,代表元素在列表里的位置信息下标值范围有两种:a.元素从左往右对应的下标是从0开始依次增加b.元素从右往左对应的下标是从-1开始依次减原创 2021-01-25 17:27:32 · 201 阅读 · 0 评论 -
day04 循环练习题
判断101-200之间有多少个素数,并输出所有素数。count=0for num in range(101,200): for x in range(2,int(num**0.5)+1): if num % x == 0: continue else: count+=1 print(num)print(count)求整数1~100的累加值,但要求跳过所有个位为3的数。sum=0for x in ra..原创 2021-01-25 01:20:56 · 321 阅读 · 0 评论 -
day3 循环与关键字
一、循环1. for x in 序列x 变量名 --随意命名序列 容器型数据类型的数据,例如,字符串,列表,元组,集合,字典,迭代器,生成器循环次数由序列中元素的个数决定list = []for x in range(5): #循环输入5个数,序列下标从0开始 num = input() list.append(num)print(list)for x in range(2,10,30): #(循环初始值,循环结束值,步长) print(x)原创 2021-01-21 20:37:46 · 102 阅读 · 2 评论 -
day03 分之和循环作业
基础题根据输入的成绩的范围打印及格 或者不及格。根据输入的年纪范围打印成年或者未成年,如果年龄不在正常范围内(0~150)打印这不是人!。输入两个整数a和b,若a-b的结果为奇数,则输出该结果,否则输出提示信息a-b的结果不是奇数。使用for和while循环输出 0~100内所有3的倍数。使用for和while循环输出0~100内所有的偶数。进阶题使用循环计算1*2*3*4*...*10的结果。muti=1for x in range(1,11): mu原创 2021-01-21 20:20:26 · 127 阅读 · 0 评论 -
day02 运算符与分支结构笔记
day02 运算符与分支结构一、运算符1. 数学运算符+(加)、-(减)、*(乘)、/(除)、%(取余、取模)、//(整除)、**(幂)1.除(/)print(2/5)#0.42.取模print(8%2) #2print(15%4) #3#应用:取低位数,取个位数,%10,取百位数%100print(12312%100)print(8979%10)3.// 整除 x除以y的结果向小取整print(5/2)print(5//2)print(-5//2) #-3print(原创 2021-01-20 20:17:43 · 188 阅读 · 1 评论 -
day02 运算符和变量作业
选择题print(100 - 25 * 3 % 4) 应该输出什么? (b)A. 1B. 97C. 25D. 0下列哪种说法是错误的(a)。A. 除字典类型外,所有标准对象均可以⽤于布尔测试B. 空字符串的布尔值是FalseC. 空列表对象的布尔值是FalseD. 值为0的任何数字对象的布尔值是False下列表达式的值为True的是(b)。A. 3>2>2`B. 1 and 2 != 1C. not(11 and 0 != 2)D. 10 < 20原创 2021-01-20 19:27:00 · 144 阅读 · 0 评论 -
day 01 python语言基础
python语言基础-day01一、语句一条有效的代码即为一条语句一条语句占一行语句后的分号可加可不加若必须两行语句同行,语句之间必须使用分号隔开一条语句开头不能随意添加空格print('Hello word!')print('王者荣耀');print('全军出击')二、注释#单行注释'''多行注释三个引号(单引号双引号都可)'''三、标识符变量、函数、类的命名由字母、数字或者下划线组成数字不能开头python3.x中,标识符可以出现中文,一般情况下不用原创 2021-01-19 19:41:33 · 102 阅读 · 0 评论