python manage.py makemigrations 和 python manage.py migrate…
无论当我们第一次在models.py中创建类对象还是对类中的属性进行修改,我们都会使用python manage.py makemigrations 和 python manage.py migrate 两个命令,单纯从这两这个命令来看的话其实仅仅只是后面makemigrations和migrate的区别 在models中第一次创建models类,如图所示: 下面使用python manage.py makemigrations 命令: 红线框中表示在blog应用目录下的migations的文件…
执行 python manage.py makemigrations django根据settings.py里面的INSTALLED_APPS项设置找到对应app里的models.py,应用里面创建的继承models.Model的类来,生成一个文件,记录着生成数据库表结构的一些数据. INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.co…
生成一个临时文件 python manage.py makemigrations 这时其实是在该app下建立 migrations目录,并记录下你所有的关于modes.py的改动,比如0001_initial.py 数据库文件数据库没有增加新的表">但是这个改动还没有作用到数据库文件,数据库没有增加新的表 接着执行migrate,这时候才真的把作用到数据库文件,产生对应的表 根据临时文件生成数据库表 python manage.py migrate 执行这两条命令自动帮我们创建数据库和基本…
进行数据库迁移的时候,显示  TypeError: __init__() missing 1 required positional argument: 'on_delete' 图示: 出现原因: 在django2.0后,定义外键和一对一关系的时候需要加on_delete选项,此参数为了避免两个表里的数据不一致问题,不然会报错: TypeError: __init__() missing 1 required positional argument: 'on_delete' 修改:…
近日学习Python,特将学习过程及一点心得记录于此. 由于之前做过一个Java爬虫的项目,虽然很长时间没有碰过爬虫,但是小郭同学有一颗不死的爬虫心,哈哈.最近在互联网上找一些电影的时候,有很多电影只提供在线观看,没有下载的链接,突然有了一种要把它爬下来的冲动.虽然用Java做爬虫有很多现成的框架像Lucene.crawler4j.Nutch.ElasticSearch等一些技术成熟的框架供你去研究.但是python写起爬虫来好像更加的方便快捷,至此就有了学习python的冲动,特此开篇,记录我…
我的笔记里的python代码运行环境都是在pycharm软件中运行,所以不去记录如何配置环境变量呀什么的. python种类 Cpython: Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上. Jpython: Python的Java实现,Jython会将Python代码动态编译成Java字节码,然后在JVM上运行. IronPython:   Python的C#实现,IronPytho…
版权归作者所有,任何形式转载请联系作者.作者:枫(来自豆瓣)来源:https://www.douban.com/note/666182545/ 现在学python的人越来越多了,我也开始学习了,大群里讨论问题好多人都不回答,而且,人多,广告多,我发的问题一会儿就被顶的不见了:所有今天建了一个Python学习交流的QQ群,建立我自己的学习及交流平台,求喜欢python的一起来交流.我是初学者,python小白,求大神来指导,号:612640160 .…
一.SQL注入问题 在使用pymysql进行信息查询时,推荐使用传参的方式,禁止使用字符串拼接方式,因为字符串拼接往往会带来sql注入的问题 # -*- coding:utf-8 -*- # author: cdc # date: 2019/3/18 import pymysql conn = pymysql.connect(host='127.0.0.1',port=3306,user='root',password='cdc19951216',db='test',charset='utf8'…
一.pymysql简介 对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同. 二.简单使用 # -*- coding:utf-8 -*- # author: cdc # date: 2019/3/18 import pymysql # 创建连接 conn = pymysql.connect(host='127.0.0.1', port=3306, user=…
一.索引简介 索引,是数据库中专门用于帮助用户快速查询数据的一种数据结构.类似于字典中的目录,查找字典内容时可以根据目录查找到数据的存放位置,然后直接获取即可,对于索引,会保存在额外的文件中.在mysql数据库中,索引是按照B树的结构来进行存储的.   30          10                        40       5         15            35             66   1   6     11    19      21      …
Mysql测试题 一.表关系 请创建如下表,并创建相关约束 二.操作表 0.在成绩表中同时显示出对应的课程名和学生名 1.自行创建测试数据 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号: 3.查询平均成绩大于60分的同学的学号和平均成绩: 4.查询所有同学的学号.姓名.选课数.总成绩: 5.查询姓“李”的老师的个数: 6.查询没学过“叶平”老师课的同学的学号.姓名: 7.查询学过“001”并且也学过编号“002”课程的同学的学号.姓名: 8.查询学过“叶平”老师所教的所有课的同学的学…
一.数据库级别 1.显示数据库 show databases; 默认数据库: mysql - 用户权限相关数据 test - 用于用户测试数据 information_schema - MySQL本身架构相关数据 2.创建数据库 # utf (推荐使用) CREATE DATABASE 数据库名称 DEFAULT CHARSET utf8 COLLATE utf8_general_ci; # gbk CREATE DATABASE 数据库名称 DEFAULT CHARACTER SET gbk…
一.下载与安装 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一. 想要使用MySQL来存储并操作数据,则需要做几件事情: a. 安装MySQL服务端b. 安装MySQL客户端c. [客户端]连接[服务端]d. [客户端]发送命令给[服…
删除重复数据:  注意数据库不能又查又删 *******#删除作者为重复数据并保留ID最大的是数据 delete from ren where author in (select * from(select author from ren GROUP BY author having count(author)>1) as a) #先按分组找出作者重复数量大于1的作者放到a中,然后再删除里边的内容并且符合下边要求的内容 and id not in (select * from(select ma…
第1-3章 这个文档是记录我学习python时一些学习笔记以及一些想法也可以称作复习笔记 第一章:起步这一章主要是从第一个"hello world"程序到python环境的搭建与配置,因为我在Mac上用的一个叫Jupiter Notebook的网页端界面,所以就省去了这个步骤,直接进行后面的练习了,当然后面到小项目的时候也许还是需要熟练的在Windows.MacOS.Linux三个不同环境下搭建环境的. 第二章:变量和简单数据类型这一章主要涵盖了:变量.字符串.数字.注释.python…
命令行模式 安装完python开发环境和工具之后,在Windows开始菜单选择"命令提示符",就会进入到命令行模式: 或者都可以,然后 点击enter键,弹出下图中的窗口,即命令行模式,他的提示符是类似: Python交互模式 在命令行模式下敲命令python,就看到类似如下的一堆文本输出,然后就会进入到Python交互模式,它的提示符是 由命令行模式 进入 交互模式 由开始菜单 进入 交互模式 由<交互模式> 切换到 <命令行模式> 由命令行模式进入交互模式之…
什么时模块 Python中的模块其实就是XXX.py 文件 模块分类 Python内置模块(标准库) 自定义模块 第三方模块 使用方法 import 模块名 form 模块名 import 方法名 说明:实际就是运行了一遍XX.py 文件 导入模块也可以取别名 如: import time as t import time as t print(t.time()) 定位模块 当前目录 如果不在当前目录,Python则搜索在shell变量PYTHONPATH下的每个目录. 如果都找不到,Pytho…
https://jjyap.wordpress.com/2014/05/24/installing-opencv-2-4-9-on-mac-osx-with-python-support/ 参照以上blog brew install opencv cd /usr/local/Cellar/opencv/2.4.9/ cd /Library/Python/2.7/site-packages/ ln -s /usr/local/Cellar/opencv/2.4.9/lib/python2.7/si…
一.pycharm 的下载与安装: 使用教程:https://www.cnblogs.com/jin-xin/articles/9811379.html 破解的方法:http://xianchang.medeming.com/13.html 二.python的基础知识 1.变量与常量. 变量:就是将一些运算的中间结果暂存到内存中,以便后续代码调用.     1,必须由数字,字母,下划线任意组合,且不能数字开头.    2,不能是python中的关键字.   ['and', 'as', 'asse…
''' 时间: 9月5日 - 9月30日 要求: 1. 书本内容总结归纳,整理在博客园笔记上传 2. 完成所有课后习题 注:“#” 后加的是备注内容(每天看42页内容,可以保证月底看完此书) ''' 摘要 Python程序可以分解成模块.语句.表达式和对象: 程序由模块构成: 模块包含语句: 语句包含表达式: 表达式建立并处理对象. 一. 为什么使用内置类型  #了解即可 内置对象使程序更容易编写 内置对象是扩展的组件 内置对象往往比定制的数据结构更高效 内置对象是语言的标准的一部分 二. Py…
想要快速的学会一个Python的模块和方法,两个函数必须要知道,那就是dir()和help() dir():能够快速的以集合的型式列出该模块下的所有内容(类.常量.方法)例: #--encoding:utf-8-- import os print dir(os) 结果: 结果:['F_OK', 'O_APPEND', 'O_BINARY', 'O_CREAT', 'O_EXCL', 'O_NOINHERIT', 'O_RANDOM', 'O_RDONLY', 'O_RDWR', 'O_SEQUE…
isinstance(obj,cls)和issubclass(sub,super) class Person(object): def __init__(self, name, age, sex, nationality): self.name = name self.age = age self.sex = sex self.nationality = nationality def say(self): print("大家好我叫:%s 今年%d岁了,我是一名%s生来自%s." %…
保护对象的属性 如果有一个对象,当需要对其进行修改属性时,有2种方法 对象名.属性名 = 数据 ---->直接修改 对象名.方法名() ---->间接修改 为了更好的保存属性安全,即不能随意修改,一般的处理方式为 将属性定义为私有属性 添加一个可以调用的方法,供调用 # -*- coding: utf-8 -*- # 声明字符编码 # coding:utf-8 class Person(object): def __init__(self, name, age, sex, nationalit…
非常全的博客,防丢链接参考https://www.cnblogs.com/madsnotes/articles/5521551.html 1.文件操作 1.1 操作流程 1)文件打开 2)文件操作 3)文件关闭 1.2 open简介 open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)打开 file 并返回相应 file object (文件对…
问题:为什么python的多线程不能利用多核CPU,但是咱们在写代码的时候,多线程的确是在并发,而且还比单线程快原因:因为GIL,python只有一个GIL,运行python时,就要拿到这个锁才能执行,在遇到I/O 操作时会释放这把锁.如果是纯计算的程序,没有 I/O 操作,解释器会每隔100次操作就释放这把锁,让别的线程有机会 执行(这个次数可以通sys.setcheckinterval来调整)同一时间只会有一个获得GIL线程在跑,其他线程都处于等待状态1.如果是CPU密集型代码(循环.计算等…
1.创建项目 依次鼠标左键点击Project>Add Folder to Project...,选择test文件夹: 2.保存项目 依次鼠标左键点击Project>Save Project as ...,输入项目名test,保存,之后会出现两个文件:test.sublime-project和test.sublime-workspace 3.设置虚拟运行环境 打开test.sublime-project,添加setting项,如下: { "folders": [ { &quo…
1.什么是类和类的对象? 类是一种数据结构,我们可以用它来定义对象,后者把数据值和行为特性融合在一起,类是现实世界的抽象的实体以编程形式出现.实例是这些对象的具体化.类是用来描述一类事物,类的对象指的是这一类事物的一个个体.例如:"人"就是一个类,而男人,女人,小孩等就是"人"这个类的实例对象:再比如"动物"也是一个类,而猫,狗等就是"动物"这个类的实例对象. 1.1 类的构成 在Python中,类(class)由3个部分构成…
1.为什么要有生成器? 在Python中,通过列表生成式,我们可以直接创建一个列表.但是,受到内存限制,列表容量肯定是有限的.而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了.那么此时聪明的你肯定会这么想:有没有一种机制,当我们想要创建列表时,不要直接先把列表中元素全部创建出来,而是把列表元素生成的方法给我,当我要使用哪几个元素的时候我再生成,现做现卖,用多少做多少,这样多好.其实,这些前人们早就替我们想到…
1.前言 在Python中,对文件的操作主要遵循以下流程: 打开文件,得到文件句柄并赋值给一个变量 通过文件句柄对文件进行操作 关闭文件 2.打开文件 使用open函数,可以打开一个已经存在的文件,或者创建一个新文件. 语法: open(文件名及路径,打开模式,编码方式) 如: # 以只读模式,并以utf-8编码方式打开当前目录下的hello.txt文件,将文件句柄赋值给变量f f = open('./hello.txt','r',encoding='utf-8') 打开文件的内部过程如下: 由…