def

Django之forms组件

巧了我就是萌 提交于 2020-11-09 09:36:18
1.forms组件的基本使用 # 1.forms组件的基本使用 写一个基础的forms.Form的类 1、 from app01 import views form_obj = views.LoginForm({ ' username ' : ' koko ' , ' password ' : ' 123 ' , ' email ' :12312 }) 2 .基本使用 1 .将需要验证的数据 以字典的方式传递给自定的类 实列化参数对象 form_obj = views.LoginForm({ ' username ' : ' koko ' , ' password ' : ' 123 ' , ' email ' :12312 }) 2 .如何验证数据是否全部合法 form_obj.is_valid() # is_valid()是所有的字段必须都合法 才会显示为True 3. form_obj.errors # 查看错误原因 会一一匹配我们字典的vlue 和我们类中设置的限制条件做匹配 { ' password ' : [ ' Ensure this value has at least 5 characters (it has 3). ' ], ' confirm_pwd ' : [ ' This field is required. ' ], ' email ' : [ '

Django forms组件

纵然是瞬间 提交于 2020-11-09 09:35:59
一、forms组件使用     form django import forms   1 自定义一个类,类需要继承forms.Form       自定义类的字段 映射 模板(html)中的form表单中的各种标签   2. 模板利用 RegForm类的实例对象 form_obj进行渲染:       自定义类RegForm的属性 CharField字段 映射 form表单的input标签                              1. form_obj.as_p --> 简单演示       2.  form_obj.username        --> input标签         form_obj.username.label      --> label名称(即label标签)         form_obj.username.id_for_label  --> label标签for属性使用的id         form_obj.errors          --> 用ul标签把所有的错误展示出来         form_obj.username.errors.0   --> 取具体某个input标签(即RegForm属性字段)的第一个错误提示信息   3. 视图views.py:       1. 实例化       form_obj =

使用python脚本统一重命名训练图片文件名

孤者浪人 提交于 2020-11-09 07:37:36
  Yolo算法,在进行模型训练时,常常使用VOC数据格式。   将图片文件复制到JPEGImages目录下,需要对文件名进行VOC标准格式编号重命名,如2020_000001.jpg,2020_000002.jpg,这样便于voc_label.py来进行后续处理。   这个工作如果手工作业,是个体力活。因此使用python脚本来做,可以重复使用。   python脚本如下,文件名为renamefiles.py。 1 # -*- coding:utf-8 -*- 2 ​ 3 # 读取指定目录,并将指定后缀的文件名重命名为yyyy_+6位数字编号的文件 4 ​ 5 import sys,os,string 6 import getopt 7 ​ 8 opts, args = getopt.getopt(sys.argv[1:], " hi:p: " , [ " help " , " input= " , " postfix= " ]) 9 ​ 10 def usage(): 11 print (sys.argv[0] + ' -i inputdir -p postfix ' ) 12 print (sys.argv[0] + ' -h #get help info ' ) 13 ​ 14 def rename_files(filepath, postfix): 15 #

Django Forms实例

痴心易碎 提交于 2020-11-09 07:37:03
# Django的Form主要具有一下几大功能: # # 生成HTML标签 # 验证用户数据(显示错误信息) # HTML Form提交保留上次提交数据 # 初始化页面显示内容 # forms组件生成HTML标签格式 # class 表名Form(Form): # 字段名 = fields.字段类型( # 初始值, # widgets=widgets.插件(attrs={html属性标签 字典格式}) # ) 1.urls.py url(r ' ^student ' , student), 2.models.py from django.db import models # Create your models here. class Class(models.Model): title = models.CharField(max_length=32 ) teachers = models.ManyToManyField( " Teacher " ) def __str__ (self): return self.title class Teacher(models.Model): name = models.CharField(max_length=32 ) def __str__ (self): return self.name class Student(models

Ajax详解

风格不统一 提交于 2020-11-09 02:40:33
前言: 有时我们在使用requests抓取数据时得到的返回结果会与浏览器中看到的内容不一致,这是因为requests只能得到原始的HTML文挡,而浏览器的页面是通过javascript处理数据后生成的,这些数据的来源可能是Ajax加载的;可能是包含在HTML文档中的,也有可能是javascript+特定的算法生成的。 对于Ajax加载的页面:当你打开网站,原始页面中只会包含一部分数据,当这部分数据被加载后,会向服务器某个接口发送一个请求来请求数据,拿到数据后再由浏览器进行渲染得到小伙伴们看到的页面的全部内容(这里比如京东商场,当你搜索某个关键字时,会出现很多商品,当你的滚动条往下滑,商品信息才慢慢被加载出来!),而这个发送的请求就是Ajax 1、What is Ajax? 答:全称为:Asynchronous JavaScript and XML ,也就是异步加载的javascript 和 XML(通俗的讲:利用javascript在保证页面不被完全刷新、链接不改变的情况下于服务器交换数据并更新网页的一种方式) 2、基本原理(具体详解请参考W3Cschool上面的内容)http://www.w3school.com.cn/ajax/index.asp(官网) 工作流程: (1)、发送请求 (2)、解析内容 (3)、渲染网页得到结果 下面我们来具体分析下整个过程: 首先介绍下

Django跨域(前端跨域)

a 夏天 提交于 2020-11-09 02:10:10
前情回顾 在说今天的问题之前先来回顾一下有关Ajax的相关内容 Ajax的优缺点 AJAX使用Javascript技术向服务器发送异步请求; AJAX无须刷新整个页面; 因为服务器响应内容不再是整个页面,而是页面中的局部,所以AJAX性能高; jQuery实现的ajax index.html Views.py ajax参数 请求参数 ######################------------data---------################ data: 当前ajax请求要携带的数据,是一个json的object对象,ajax方法就会默认地把它编码成某种格式 (urlencoded:?a=1&b=2)发送给服务端;此外,ajax默认以get方式发送请求。 function testData() { $.ajax("/test",{ //此时的data是一个json形式的对象 data:{ a:1, b:2 } }); //?a=1&b=2 ######################------------processData---------################ processData:声明当前的data数据是否进行转码或预处理,默认为true,即预处理;if为false, 那么对data:{a:1,b:2}会调用json对象的toString(

Django 之 序列化

假如想象 提交于 2020-11-09 01:01:11
Django之序列化 关于Django中的序列化主要应用在将数据库中检索的数据返回给客户端用户,特别的Ajax请求一般返回的为Json格式。 serializers 1 2 3 4 5 from django.core import serializers ret = models.BookType.objects. all () data = serializers.serialize( "json" , ret) json.dumps 1 2 3 4 5 6 7 8 import json #ret = models.BookType.objects.all().values('caption') ret = models.BookType.objects. all ().values_list( 'caption' ) ret = list (ret) result = json.dumps(ret) 由于json.dumps时无法处理datetime日期,所以可以通过自定义处理器来做扩展 如: import json from datetime import date from datetime import datetime d = datetime.now() class JsonCustomEncoder(json.JSONEncoder): def default

[LeetCode] 26. Remove Duplicates from Sorted Array 有序数组中去除重复项

无人久伴 提交于 2020-11-09 01:00:43
Given a sorted array nums , remove the duplicates in-place such that each element appear only once and return the new length. Do not allocate extra space for another array, you must do this by modifying the input array in-place with O(1) extra memory. Example 1: Given nums = [1,1,2], Your function should return length = 2 , with the first two elements of nums being 1 and 2 respectively. It doesn't matter what you leave beyond the returned length. Example 2: Given nums = [0,0,1,1,1,2,2,3,3,4], Your function should return length = 5 , with the first five elements of nums being modified to 0 , 1

在Python中创建文字云或标签云

与世无争的帅哥 提交于 2020-11-08 20:56:52
作者|ISHA5 编译|Flin 来源|analyticsvidhya 介绍 从开始从事数据可视化工作的那一天起,我就爱上它了。我总是喜欢从数据中获得有用的见解。 在此之前,我只了解基本图表,例如条形图,散点图,直方图等,这些基本图表内置在tableau中,而Power BI则用于数据可视化。通过每天完成此任务,我遇到了许多新图表,例如径向仪表盘,华夫图等。 因此,出于好奇,最近我正在搜索数据可视化中使用的所有图表类型,这些词云引起了我的注意,我发现它非常有趣。直到现在,看到这个词云图像迫使我认为这些只是随机排列的图像,这些单词是随机排列的,但是我错了,而且一切都从这里开始。之后,我尝试使用Tableau和Power BI中的少量数据制作词云。在成功尝试之后,我想通过编写条形图,饼图和其他图表的代码来尝试使用它。 词云是什么? 定义:词云是一个简单但功能强大的可视化表示对象,用于文本处理,它以更大,更粗的字母和不同的颜色显示最常用的词。单词的大小越小,重要性就越小。 标签云的用途 1) 社交媒体上的热门标签 (Instagram,Twitter): 全世界,社交媒体都在寻找最新更新的趋势,因此,我们可以获取人们在其帖子中使用最多的标签。 2) 媒体中的热门话题 : 分析新闻报道,我们可以在头条新闻中找到关键字,并提取出前n个需求较高的主题,并获得所需的结果,即前n个热门媒体主题。

Python 练习题

℡╲_俬逩灬. 提交于 2020-11-08 09:08:39
一,两个小组对战,对战规则如下: team1 = ['a','b','c'] team2 = ['x','y','z'] #a 不和x对战,b 不和y,z 对战 # for i in team1: #法一 # for j in team2: # if i == 'a' and j == 'x': # continue # elif i == 'c' and (j == 'y' or j =='z'): # continue # else: # print('%s VS %s'%(i,j)) for t1 in team1: #法二 if t1 == 'a': tmp = team2[team2.index('x')+1:] #返回x 的索引 elif t1 == 'b': tmp = team2[:team2.index('y')] #返回 y 的索引 else: tmp = team2 for t2 in tmp: print('%s VS %s'%(t1,t2)) def func(x): if x > 0 : func(x-1) print(x) func(5) 输出结果: 1 2 3 4 5 (递归) 二,循环删list元素 li = [1,1,2,3,4,5,6,7,8,9] for i in li: if i%2!=0: li.remove(i) print(li)