def

Django REST framework API认证(包括JWT认证)

ぃ、小莉子 提交于 2021-02-17 12:50:40
Django REST framework API认证(包含JWT认证) + 权限 发表于 2019-02-24 | 分类于 Django , PYTHON | 0 | 阅读次数: 30 字数统计: 6.3k | 阅读时长 ≈ 26 Django REST framework API认证(包含JWT认证) + 权限 Django REST framework API认证(包含JWT认证) 一. 背景 在我们学习Django Rest Framework(简称DRF)时,其非常友好地给我们提供了一个可浏览API的界面。很多测试工作都可以在可浏览API界面完成测试。要使用可浏览API界面很简单,只需要在urls.py文件中添加如下部分即可。 1 2 3 4 from django.conf.urls import include urlpatterns += [ url( r'^api-auth/' , include( 'rest_framework.urls' , namespace= 'rest_framework' )) ] 其中, r'^api-auth/' 部分实际上可以用任何你想使用URL替代,唯一的限制是所包含的URL必须使用 'rest_framework' 命名空间。在Django 1.9+中,REST framework将自动设置,所以你也无须关心。 配置完成后

Python面试题之Python面试题汇总

三世轮回 提交于 2021-02-17 12:24:25
参考地址 目录 Python基础篇 1:为什么学习Python 2:通过什么途径学习Python 3:谈谈对Python和其他语言的区别 Python的优势: 4:简述解释型和编译型编程语言 5:Python的解释器种类以及相关特点? 6:位和字节的关系 7:b、B、KB、MB、GB的关系 8:PE8规范 9:通过代码实现如下转换(进制之间转换) 10:请编写一个函数实现将IP地址转换成一个整数 11、python递归的最大层数?998 12:求结果(and or or) 运算符 13 :ascii、unicode、utf-8、gbk 区别 14:字节码和机器码的区别 15:三元运算写法和应用场景? 16:Python3和Python2的区别? 17:用一行代码实现数值交换 18:Python3和Python2中int和long区别 19:xrange和range的区别 20:文件操作时:xreadlines和readlines的区别? 21: 列列举布尔值为False的常见值? 22. 字符串、列表、元组、字典每个常用的5个方法? 23、 lambda表达式格式以及应用场景? 24. pass的作用 25. *arg和**kwarg作用 26. is和==的区别 27:谈谈Python的深浅拷贝?以及实现方法和应用场景。 28. Python垃圾回收机制? 29.

Python中的mixin模式

Deadly 提交于 2021-02-17 09:39:45
转载注明,本文链接: http://www.bianbingdang.com/article_detail/167.html MixIn和继承的关系 面向对象三大特征,继承、封装、多态。第一次看到MixIn的时候,弄不懂这个和继承有什么关系/区别。首先,继承是父亲和儿子的关系,而python minxin是混入的意思。虽然,MinIn子类可以使用,父类的方法,但这并不是一种继承的关系,而是父类为子类提供了一种可用的方法。 继承的诟病 子类、父类继承关系过多,会导致思维上的混乱,比如我们的父类派生出很多个子类,我们会一直考虑继承了XXX,如果父类没有这个方法,则子类再创造一个方法,那么子类这个方法多个地方用到,我们又得把它加入到父类才行,这样下来并不是很合适。 MixIn MixIn的方式则没有那么得拘束,例如有个Persion类 class Person(): pass 这个人需要修电脑,但是我不会修怎么办。那我写个修电脑的方法给他,那显然不合适。那怎么办,刚好这个人有个朋友,过来帮帮忙吧。 class FriendMixIn(): def repair_compute: return True class Person(FriendMixIn): pass 那么很快就明白,MixIn相当于在原来的基础上,锦上添花。他是包含的意思,而不是继承的关系。

python之内置函数、匿名函数

≯℡__Kan透↙ 提交于 2021-02-17 08:59:50
python之内置函数,匿名函数 一、内置函数   我们一起来看看python里的内置函数。什么是内置函数?就是Python给你提供的,拿来直接用的函数,比如print,input等等。截止到python版本3.6.2,现在python一共为我们提供了 68个内置函数 。它们就是python提供给你直接可以拿来使用的所有函数。这些函数有些我们已经用过了,有些我们还没用到过,还有一些是被封印了,必须等我们学了新知识才能解开封印的。那今天我们就一起来认识一下python的内置函数。这么多函数,我们该从何学起呢? 内置函数 abs() dict() help() min() setattr() all() dir() hex() next() slice() any() divmod() id() object() sorted() ascii() enumerate() input() oct() staticmethod() bin() eval() int() open() str() bool() exec() isinstance() ord() sum() bytearray() filter() issubclass() pow() super() bytes() float() iter() print() tuple() callable() format() len(

python之路——内置函数和匿名函数

安稳与你 提交于 2021-02-17 08:49:21
阅读目录   楔子   内置函数   匿名函数   本章小结 楔子 在讲新知识之前,我们先来复习复习函数的基础知识。 问:函数怎么调用? 函数名() 如果你们这么说。。。那你们就对了!好了记住这个事儿别给忘记了,咱们继续谈下一话题。。。 来你们在自己的环境里打印一下自己的名字。 你们是怎么打的呀? 是不是print('xxx'),好了,现在你们结合我刚刚说的函数的调用方法,你有没有什么发现? 我们就猜,print有没有可能是一个函数? 但是没有人实现它啊。。。它怎么就能用了呢? 早在我们“初识函数”的时候是不是就是用len()引出的? 那现在我们也知道len()也是一个函数,也没人实现,它好像就自己能用了。。。 之前老师给你讲你可以这样用你就用了,那你有没有想过像这样直接拿来就能用的函数到底有多少? 内置函数 接下来,我们就一起来看看python里的内置函数。截止到python版本3.6.2,现在python一共为我们提供了 68个内置函数 。它们就是python提供给你直接可以拿来使用的所有函数。这些函数有些我们已经用过了,有些我们还没用到过,还有一些是被封印了,必须等我们学了新知识才能解开封印的。那今天我们就一起来认识一下python的内置函数。这么多函数,我们该从何学起呢? Built-in Functions abs() dict() help() min()

sqlmap tamper脚本备忘录与tamper脚本编写

北城以北 提交于 2021-02-17 07:58:29
查看sqlmap全部脚本 $ python sqlmap.py --list-tampers 使用方法 --tamper=TAMPER 2019.9更新后翻译 * apostrophemask.py-用其UTF-8全角字符替换撇号(')(例如'->%EF%BC%87) * apostrophenullencode.py-用非法的双unicode替换撇号(')(例如'->%00%27) * appendnullbyte.py-在有效载荷的末尾附加(访问)NULL字节字符(%00) * base64encode.py-Base64对给定有效载荷中的所有字符进行编码 * between.py- 替换较大比运算符('>')带有'NOT BETWEEN 0 AND#',等于运算符('=')与'BETWEEN#AND#' * bluecoat.py-用有效的随机空白字符替换SQL语句后的空格字符。然后用运算符LIKE替换字符'=' * chardoubleencode.py-双重URL编码给定有效负载中的所有字符(未处理已编码)(例如SELECT->%2553%2545%254C%2545%2543%2554) * charencode.py-URL编码中的所有字符给定的有效载荷(不处理已经编码的)(例如SELECT->%53%45%4C%45%43%54) *

sklearn调用SVM算法

混江龙づ霸主 提交于 2021-02-17 07:56:05
1、支撑向量机SVM是一种非常重要和广泛的机器学习算法,它的算法出发点是尽可能找到最优的决策边界,使得模型的泛化能力尽可能地好,因此SVM对未来数据的预测也是更加准确的。 2、SVM既可以解决分类问题,又可以解决回归问题,原理整体相似,不过也稍有不同。 在sklearn章调用SVM算法的代码实现如下所示: #(一)sklearn中利用SVM算法解决分类问题 import numpy as np import matplotlib.pyplot as plt from sklearn import datasets d=datasets.load_iris() x=d.data y=d.target x=x[y<2,:2] y=y[y<2] print(x) print(y) plt.figure() plt.scatter(x[y==0,0],x[y==0,1],color="r") plt.scatter(x[y==1,0],x[y==1,1],color="g") plt.show() #进行数据据标准化处理(线性方式) from sklearn.preprocessing import StandardScaler s1=StandardScaler() s1.fit(x) x_standard=s1.transform(x) print(np.hstack([x,x

sklearn svm基本使用

拟墨画扇 提交于 2021-02-17 07:55:48
SVM基本使用     SVM在解决分类问题具有良好的效果,出名的软件包有 libsvm (支持多种核函数), liblinear 。此外python机器学习库scikit-learn也有svm相关算法, sklearn.svm. SVC 和 sklearn.svm.LinearSVC 分别由libsvm和liblinear发展而来。   推荐使用SVM的步骤为: 将原始数据转化为SVM算法软件或包所能识别的数据格式; 将数据标准化;(防止样本中不同特征数值大小相差较大影响分类器性能) 不知使用什么核函数,考虑使用RBF; 利用交叉验证网格搜索寻找最优参数(C, γ);(交叉验证防止过拟合,网格搜索在指定范围内寻找最优参数) 使用最优参数来训练模型; 测试。 下面利用scikit-learn说明上述步骤: 1 import numpy as np 2 from sklearn.svm import SVC 3 from sklearn.preprocessing import StandardScaler 4 from sklearn.model_selection import GridSearchCV, train_test_split 5 6 def load_data(filename) 7 ''' 8 假设这是鸢尾花数据,csv数据格式为: 9 0,5.1,3.5,1.4

leetcode python 010

末鹿安然 提交于 2021-02-17 07:54:19
#实现正则表达式匹配并支持'.'和'*'。 #''匹配任何单个字符。 #'*'匹配前面元素的零个或多个。 #匹配应覆盖整个输入字符串(非部分)。 ##Some examples: ##isMatch("aa","a") → false ##isMatch("aa","aa") → true ##isMatch("aaa","aa") → false ##isMatch("aa", "a*") → true ##isMatch("aa", ".*") → true ##isMatch("ab", ".*") → true ##isMatch("aab", "c*a*b") → true def ismatch(s,re): l=[] for k in range(len(re)): if re[k]=='*': l.append(k) re=''.join(re.split('*')) for i in range(len(l)): l[i]=l[i]-i-1 print(re) print(l) flg=0 for i in range(len(s)): ## *退出 while flg in l and s[i]!=re[flg] and re[flg]!='.': flg+=1 if flg==len(re): return False,'re too short' if

Python带括号的计算器

天涯浪子 提交于 2021-02-17 07:44:45
带括号的计算器也是第一个自我感觉完成最好的 毕竟真的弄了一个多星期 虽然前期这路真的很难走 我会努力加油 将Python学好学踏实 参考了两位博主的文章 http://www.cnblogs.com/0zcl/p/5983236.html http://www.cnblogs.com/loyfee/p/5764926.html#3538071 大致过程就是 先将输入的数据转为列表 当中去除空字符 接着找出最里层括号 进行运算 再将结果放回列表 最后算出结果 import re #data = input( " 请输入算术: " ) def change_list(data): data =re.sub( " " , "" ,data)#将空格转为 "" # print(data) data_list = [] for i in data: data_list.append(i) num = 0 try : while 1 : if data_list[ 0 ] == " - " : data_list[ 0 ] = data_list[ 0 ] + data_list[ 1 ] data_list.pop( 1 ) if data_list[num].isnumeric(): if data_list[num+ 1 ].isnumeric(): data_list[num] =