- 博客(26)
- 收藏
- 关注
转载 Python中eval()和exec()函数
文章目录eval()函数exec()函数eval()函数作用:计算指定表达式的值,返回表达式的值。只能是单个运算表达式,不能是赋值操作或复杂的代码逻辑eval(expression[, globals[, locals]])参数expression – 表达式,必选参数,可以是字符串,也可以是任意的code对象实例(可以通过compile函数创建)globals – 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象,则计算时取globals中的值locals – 变量作用域,局部
2022-05-16 23:38:58
213
原创 Python练习题-只给自己看的,非学习资料
1,list = [{‘name’:’小红’,sub’:[{‘name’:’小明’,’sub’:[{‘name’:’小花’}]},{’name‘:’小黑’}]}]这是一个嵌套列表,但是嵌套的可能有n层,如何运用递归函数得到列表中所有的“name”值,并且有层级关系的名字需要拼接起来,得到的结果是“[‘小红’,’小红’/’小明,’小红’/’小明/’小花’, ‘小红’/’小黑’]” 。解题思路:因为外层的名字要与内层名字拼接,所以每次获取外层的名字,都要作为参数传入内层,最外层参数默认为空字符串;每一次将
2022-05-16 18:42:13
689
原创 Python高阶函数学习总结(map,filter,reduce,递归函数简介,闭包函数)
文章目录1、高阶函数定义2、map函数3、filter函数4、reduce函数1、高阶函数定义函数的入参或返回值中有函数,就可以成为高阶函数入参中有函数的:返回值中有函数的:def func1(): print('正在执行func1')def func2(): print('正在执行func2') return func1res=func2()res() #注意调用,调用返回值的函数#func2()() #或者写成这种格式,直接调用参数和返回值都有函
2022-05-15 23:44:46
466
原创 Python函数学习_变量作用域
作用域作用域作用域即变量的有效范围,就是变量在哪个范围内使用作用域由变量的定义位置决定分为四个层级:内置作用域:python预先定义好的,在__builtins__模块中,主要是一些关键字,open,range,quit,print等全局作用域:定义在顶层的,模块级别的,不是写在函数内部的本地作用域:函数内部的,只能在函数内部用,外面是看不到的嵌套函数的本地作用域:属于内层函数注:函数名也是变量变量搜索规则从当前向外查找,找到就停止,一直找到内置作用域,如果仍然找不到就报错因为是由
2022-05-12 16:31:30
296
原创 Python字符串格式化format 学习总结
1、占位输出索引从0开始 根据索引去匹配print('i am a {0},i\'m {1} years old {0} {0}'.format('girl',18))结果为:2、如果不写索引 则按顺序匹配print('{} {}'.format('hello','world'))结果为:3、对齐{:>2} 右对齐{:<2} 左对齐{:^7} 居中对齐#其中数字为总宽度 宽度必须为数字4、format(s,n)括号中的内容不一定是字符串 可以是任意数
2022-05-11 23:11:53
125
原创 Django框架Web接口开发(三)ORM操作_单表查询
ORM操作ORM简介一、单表操作1、创建表2、插入数据3、查询数据ORM简介Django框架中的ORM(Objects Realitional Mapping)即对象关系映射,是一种基于关系型数据库的程序技术,实际操作就是 通过类和对象对数据库进行操作,而不是通过SQL语句来操作数据库。ORM把类映射成数据库中的表,把类的一个实例对象映射成数据库中的数据行,把类属性映射成表中的字段,通过对象的操作对应到数据库表的操作适配多种常用的关系型数据库,如PostgreSQL,MySQL,Oracle,Sql
2021-07-24 09:20:37
206
原创 Django框架Web接口开发(二)创建项目
Django框架Web接口开发创建项目启动项目创建项目创建Django项目有两种方法(一)命令行创建创建项目切换到想要放项目的目录,运行以下命令django-admin startproject {projectname}创建应用一个应用(app)就是一个模块命令行创建项目不会自动创建应用(app),需要手动创建,运行以下命令:python manage.py startapp {appname} #要在项目路径下执行这条命令创建应用后,在{projectname}/
2021-06-26 01:07:29
243
原创 Django框架Web接口开发(一)环境准备
DjangoDjango介绍Django安装Django介绍Django是基于Python语言的Web开发框架,快速建站,功能完整,定义了服务发布、路由映射、模板编程、数据处理的一整套功能。Django MTV 设计模式:Urls路由层: 定义路径匹配对应的方法或函数(即找到视图路径)Views视图层: 定义方法和函数,每个方法/函数都是一个视图,主要是处理业务逻辑,作用是联通Model层和Template层,返回模板层/html文件/地址/字符串等。Model模型层: 数据存储层,通过函数定
2021-06-17 00:17:32
297
2
原创 Web-UI自动化测试介绍
Web自动化介绍1、自动化意义模拟人工、提升效率、脚本复用、减少重复工作验证功能正确性本质上提升测试效率适用于冒烟测试和回归测试主要目的在于验证问题,而不是发现问题2、适用范围项目需求稳定:软件系统界面稳定,UI界面变化不频繁项目周期长,软件维护周期长,半年以上的项目,且存在版本迭代人力充足,任务明确,需要专门的人来编写和维护自动化脚本3、自动化测试框架完整的自动化测试框架主要考虑:测试用例编写:用什么工具,什么语言测试用例执行:是工具上直接运行或命令行执行,用例执行控制(比如指
2021-04-26 23:52:32
567
原创 Python生成器学习总结
生成器是特殊的迭代器通过yield生成元素每执行一次yield生成一个元素range()函数也是一个生成器生成器其实是一个有yield语句的函数定义一个生成器函数 返回的是一个生成器对象,可迭代def mygenerator(s)s:for i in s:yield i**2for i in mygenerator(‘hello’):print(i)#当yield的来源为一个for循环时,可以写成yield from s如果是上面的代码可以这样写吗?...
2021-04-06 23:55:52
199
原创 Python集合类型学习总结
构建集合特性:无序,用hash值存储元素必须是不可变对象元素不可重复set集合可变,forzenset不可变可迭代1、大括号构建{ }s = {‘a’,‘b’,‘c’}s={ } #空的{ }是字典,不是集合2、set()方法,括号内是可迭代对象s = set('abcde')#s->{'e', 'c', 'd', 'a', 'b'}s1 = frozenset('jqk')3、构建空集合s1=set()4、集合解析>>>{x*2 for x i
2021-03-19 00:12:13
431
原创 Python字典学习总结
构建字典无序 不可索引1、使用大括号dic = { } #空字典dic = {'name':'Rachel','age':25}2、使用dict方法[ ] dict(key=value)dic = dict(a=1,b=2,c=3)dic = dict('a'=1,'b'=2) #-->语法错误,报错[ ] dict(iterable)#iterable的每个元素必须是两元素的数据对象,就是元组放在列表中offer = dict([('company','huawei')
2021-03-18 01:21:51
209
原创 TJ练习题Day01
练习题字符串1,输入一个字符串,打印所有奇数位上的字符(下标是1,3,5,7…位上的字符)while True: orig_str=input() if orig_str=='stop': #如果输入stop,则停止输入,退出循环 break origstr_lenth=len(orig_str) if origstr_lenth>1: for i in range(1,origstr_lenth,2):
2021-03-14 09:45:44
357
原创 Python函数定义与调用
一、不可变参数(参数个数固定)函数定义封装好的 能被反复调用的 结构(函数名,参数,代码块)先定义再调用#定义一个函数 参数分别是x,y def add(x,y): #x,y是定义时的参数,即为形参 result=x+y return result #如果不写return 函数会默认返回None函数调用add(4,5) #此时调用函数,传入的 4,5 分别对应x和y,4,5为实参函数调用时 传参方式有两种,位置参数和关键字参数位置参数关键字参数
2021-03-14 08:54:22
1428
原创 Python str类型学习总结(二)
其他title 首字母大写capitalize 每个单词的首字母大写1、字符串is判断系列str.isalnum() 是否是字母和数字组成str.isalpha() 是否只包含字母(空格也不行)str.isdecimal() 是否只包含十进制数str.isdigit()str.iddentifier() 是不是字母和下划线开头,其他啊都是字母、数字、下划线islower() 是否都是小写 isupper() 是否全部大写 isspace() 是否只包含空白字符2、字符串格式化
2020-11-30 23:37:19
196
1
原创 Python str类型学习总结(一)
有序不可变str1=‘i am a student’有序:str1[2:3]不可变>>> s='i am a student'>>> s'i am a student'>>> s.split() #默认按照空白字符+ 分隔['i', 'am', 'a', 'student']>>> s.split('a') #给定分隔符,分隔后,分隔符就不见了['i ', 'm ', ' student']>>
2020-10-20 23:58:26
23922
3
原创 Python元组tuple学习总结
元组是有序的、不可变1、tuple定义i、t=()t1=(2,[1,5],‘a’)ii、元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用iii、t=tuple(iterable) >>>tup1 = (50)>>> type(tup1) # 不加逗号,类型为整型<class 'int'> >>> tup1 = (50,)>>> type(tup1) # 加上逗号
2020-09-16 00:50:12
452
原创 三数比较之基础版多种方法(if else判断&max函数&list排序)
输入三个数,依次比较大小,并由小到大打印出来方法一:把6种情况罗列出来,重点是不能漏掉场景a=int(input())b=int(input())c=int(input())if a>b: if b>c: print(c,b,a) else: if a>c: print(b,c,a) else: print(b,a,c)else: if b>c:
2020-09-13 01:30:24
605
原创 Python List学习总结
1、定义list不需要先声明list大小list1=[] #定义一个空listlist2=[1,2,3] #定义一个非空list2、list性质: 有序的&可变的,元素类型不必须相同3、list查询①根据值取索引,listname.index(x[, start[, end]]),时间复杂度O(n)#根据值查找其是否为list中的元素,如果是则返回其索引,如果有多个,匹配到第一个,则立即返回其索引;如果没有找到,则抛出异常ValueErrorlist2=[1,2,5,7,2,3
2020-09-01 00:22:40
216
原创 变量与深浅拷贝
1、定义一个变量 就会在内存中申请一个地址 ,变量就有了它指向的地址所以在编码过程中 要按需定义变量,节省内存2、赋值及变量比较lis0=list(range(4))print(id(lis0))lis1=lis0 #赋值 是将lis0中的内容赋值给lis1,不重新申请内存地址,lis1与lis0指向同一个地址print(id(lis1))print(lis1==lis0) # = = 是比较两个变量的内容是否相等,结果为Trueprint(lis1 is lis0) #i
2020-09-01 00:19:54
182
原创 求素数(质数)基础及进阶
1、判断一个数 是不是素数(质数)n=int(input())m=int(n**0.5)+1#print(m)for i in range(2,m): if n%i==0: print('不是质数') breakelse: print('是质数')2、求10w以内的素数import timeprint(2,end=’ ‘)count=1for n in range(3,100000,2):a=int(n**0.5)for i in r
2020-08-24 23:50:01
228
原创 Python基础练习_打印正方形/菱形/闪电
1、打印一个边长为n的正方形n=int(input())for i in range(n): if i==0 or i==n-1: print('*\t'*n) else: print('*\t'+' \t'*(n-2)+'*')2、打印菱形方法一:上下两部分 分开打n=int(input())e=n//2+1#先打印上半部分for i in range(1,e): print((e-i)*' '+(2*i-1)*'*')#再打印
2020-08-17 00:11:09
1365
原创 python基础数据类型&循环练习题
这##输入一个正整数 判断是几位数 并依次打印个位 十位 百位。。'''a = input(sum=0fac=1for i in range(1,6):fac*=isum+=facprint(sum)R=float(input())R=int(R)square=(R**2)*3.14line=2*3.14*Rprint(square,line)a='3.5' 不能直接将浮点的字符串转换成int,只能先转换成float 再转换成intprint(int(a))max=0while True:m=input
2020-08-16 23:21:43
1138
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人