pycharm

python3开发进阶-Django框架的起飞加速一(ORM)

做~自己de王妃 提交于 2020-04-26 23:30:36
阅读目录 ORM介绍 Django中的ORM ORM中的Model ORM的操作 一、ORM介绍 1、ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。 简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中。 ORM在业务逻辑层和数据库层之间充当了桥梁的作用。 2、ORM由来 让我们从O/R开始。字母O起源于"对象"(Object),而R则来自于"关系"(Relational)。 几乎所有的软件开发过程中都会涉及到对象和关系数据库。在用户层面和业务逻辑层面,我们是面向对象的。 当对象的信息发生变化的时候,我们就需要把对象的信息保存在关系数据库中。 按照之前的方式来进行开发就会出现程序员会在自己的业务逻辑代码中夹杂很多SQL语句用来增加、读取、修改、删除相关数据,而这些代码通常都是重复的。 3、ORM的优势 ORM解决的主要问题是对象和关系的映射。它通常把一个类和一个表一一对应,类的每个实例对应表中的一条记录,类的每个属性对应表中的每个字段。 ORM提供了对数据库的映射,不用直接编写SQL代码,只需像操作对象一样从数据库操作数据。 让软件开发人员专注于业务逻辑的处理,提高了开发效率。 4、ORM的劣势

Django之MVC框架与MTV框架详解

安稳与你 提交于 2020-04-26 22:59:07
Django框架简介 MVC框架和MTV框架(了解即可) MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller),具有耦合性低、重用性高、生命周期成本低等优点。 想要更详细的了解MVC模式? >> 点我 Django框架的设计模式借鉴了MVC框架的思想,也是分成三部分,来降低各个部分之间的耦合性。 Django框架的不同之处在于它拆分的三部分为:Model(模型)、Template(模板)和View(视图),也就是MTV框架。 Django的MTV模式 Model(模型):负责业务对象与数据库的对象(ORM) Template(模版):负责如何把页面展示给用户 View(视图):负责业务逻辑,并在适当的时候调用Model和Template 此外,Django还有一个urls分发器,它的作用是将一个个URL的页面请求分发给不同的view处理,view再调用相应的Model和Template Django框架图示 APP 一个Django项目可以分为很多个APP,用来隔离不同功能模块的代码。 命令行创建 python manage.py startapp app01 使用PyCharm创建 在下方弹出的命令窗口输入: startapp app01 路由系统

使用notepad++运行python

不羁的心 提交于 2020-04-26 22:44:23
参考博客:https://blog.csdn.net/humanking7/article/details/80464000 尽管有pycharm和spyder这样的IDE可以编写python程序,但是它们都打开慢,耗资源,ulipad虽然也很小巧,但是觉得不如notepad++用着顺手,于是就想用notepad++配置一下。 打开notepad++,在菜单栏单击“运行”菜单,在下拉菜单中选择“运行”。 接着会弹出这个窗口 在文本框中输入如下内容: cmd /k cd /d " $(CURRENT_DIRECTORY) " & python " $(FULL_CURRENT_PATH) " & ECHO. & PAUSE & EXIT 然后点击保存,会弹出如下对话框: 在文本框中输入名字,由于是配置python运行快捷键,可取名为 run_python。 下面是设置快捷键,可设置 ctrl+F5作为快捷键,单击CTRL左侧的复选框然后在None下拉菜单中找到F5,选中。 这样就配置好了。接着就可以在notepad++上使用ctrl+F5运行程序了。 命令的解释: cmd /k cd /d " $(CURRENT_DIRECTORY) " & python " $(FULL_CURRENT_PATH) " & ECHO. & PAUSE & EXIT cmd /k :

python爬取优美图库海量图片,附加代码,一键爬取

旧街凉风 提交于 2020-04-26 16:10:16
优美高清图片为大家提供高清美女套图赏析,非高清不录入,大家的网速要给力。 今天教大家爬取优美图库网站中高质量的图片!! 简单易上手哦~ 使用工具: Python 3.6 pycharm 相关环境: requests parsel xpath 主要内容: 1、系统分析目标网页 2、html标签数据解析方法(xpath) 3、海量图片数据一键保存 爬虫的一般思路: 1、确定爬取的url路径,headers参数 2、发送请求 -- requests 模拟浏览器发送请求,获取响应数据 3、析数据 -- parsel 转化为Selector对象,Selector对象具有xpath的方法,能够对转化的数据进行处理 4、保存数据 代码如下: import requests import parsel # 1、确定爬取的url路径,headers参数 base_url = ' https://www.umei.cc/meinvtupian/meinvxiezhen/ ' headers = { ' user-agent ' : ' Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.122 Safari/537.36 ' } # 2、发送请求 --

《黑客帝国》中的代码雨让人身临其境!利用Python轻松实现!

断了今生、忘了曾经 提交于 2020-04-26 16:09:38
前言 《黑客帝国》的一段代码雨片段让外行人感觉非常震撼,但其实利用咱们的Python来做出这个效果真的很简单! 今天就带大家把这个代码雨放在自己的显示器上面,亲身体验一把黑客的感觉! 环境 Windows 操作系统 Python 解释器 pycharm 编辑器 random 随机数模块 pygame GUI界面模块 实战 设置代码雨窗口的宽高以及字体文件 import random import pygame PANEL_width = 1100 PANEL_highly = 600 FONT_PX = 15 pygame.init() # 创建一个可是窗口 winSur = pygame.display.set_mode((PANEL_width, PANEL_highly)) font = pygame.font.SysFont("123.ttf", 25) bg_suface = pygame.Surface((PANEL_width, PANEL_highly), flags=pygame.SRCALPHA) pygame.Surface.convert(bg_suface) bg_suface.fill(pygame.Color(0, 0, 0, 28)) winSur.fill((0, 0, 0)) 代码雨可以随机飘落数字,当然也可以是字母,所以这里有两个版本

室友U盘内容丰富,被我利用Python几行代码就拷贝,他还不知道!

≡放荡痞女 提交于 2020-04-26 16:09:07
前言 标题就当故事就好了,咱们还是来学习的。简而言之就是利用Python编程去拷贝U盘内容,并且还要达到别人不知道的效果,最关键的是代码量少,零基础都看得懂。 准备 Python3.6.5 解释器 pycharm 编辑器 模块 os shutil time datetime 思路 当别人把U盘插进电脑的时候,就要开始立马拷贝,并且这个过程中你就不能再动电脑了,不然就会有嫌疑。 所以最好的办法就是,在别人插入U盘前,你就开始运行Python程序,写个死循环去检测是否插入了U盘(这个U盘的分配盘就不要我多介绍了,比如你自己的电脑盘是G结尾,那么U盘就是H盘了)。这个时候别人一插入U盘,立马执行下面的拷贝程序。 所以咱们的代码就很简单了,这个是检测U盘的代码 while True: if os.path.exists('F:'): now = str(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')) print('已经检测U盘...' + now) 剩下的就是拷贝的Python代码,把U盘内容复制到其它文件夹即可。 shutil.copytree('F:', r'C:\{}'.format(str(time.time()))) last_now = str(datetime.datetime.now().strftime('%Y

Python爬虫---爬取腾讯动漫全站漫画

与世无争的帅哥 提交于 2020-04-26 15:26:21
目录 操作环境 网页分析 明确目标 提取漫画地址 提取漫画章节地址 提取漫画图片 编写代码 导入需要的模块 获取漫画地址 提取漫画的内容页 提取章节名 获取漫画源网页代码 下载漫画图片 下载结果 完整代码 操作环境 编译器:pycharm社区版 python 版本:anaconda python3.7.4 浏览器选择:Google浏览器 需要用到的第三方模块:requests , lxml , selenium , time , bs4,os 网页分析 明确目标 首先我们打开 腾讯动漫 首页,分析要抓取的目标漫画。 找到腾讯动漫的漫画目录页,简单看了一下目录,发现全站的漫画数量超过了三千部(感觉就是爬下来也会把内存撑爆) 于是我觉得爬取首页的推荐漫画会是一个比较好的选择(爬取全站漫画只需要稍稍改一下网址构造就可以做到了) 提取漫画地址 选定了对象之后,就应该想办法来搞到漫画的地址了 右击检查元素,粗略看一遍网页的源代码,这时我发现里面有很多连续的 标签,我猜测每部漫画的地址信息就存储在这些标签里面 随便打开一个《li》标签,点击里面包裹的链接地址会跳转到一个新的网页,这个网页正是我想要找的漫画地址,可以见得我的猜测是正确的,等到实际操作的时候再用表达式提取信息就非常容易了 提取漫画章节地址 进入漫画的目录页,发现一页最多可以展示20章的漫画目录

Python实现阿里云域名DDNS支持ipv4和ipv6

↘锁芯ラ 提交于 2020-04-26 13:14:28
前言 首先得有一个阿里云的域名: https://www.aliyun.com/minisite/goods?userCode=jdjc69nf 然后你的IP必须是公网IP,不然解析了也没用。 本文章讲怎样通过阿里云的SDK来添加修改域名解析,检查本机IP与解析的IP是否一致,不一致自动修改解析,达到动态解析的目的,主要用于家庭宽带这些动态IP的地方。 安装阿里云SDK和其他第三方库 pip install aliyun-python-sdk-core-v3 pip install aliyun-python-sdk-domain pip install aliyun-python-sdk-alidns pip install requests 直接在CMD中输入上面的命令即可,如果下载速度太慢可以百度搜 windows下Python换源 。 使用Pycharm之类IDE的自行百度 pycharm怎样安装第三方库 详细步骤 获取accessKeyId和accessSecret 可以在阿里云控制台个人中心直接获取,但是一般建议使用RAM角色来进行权限控制,这样这个accessKey和accessSecret就只能操作域名,不能操作其他的资源,相对会比较安全。关于RAM快速入门: https://help.aliyun.com/document_detail/28637.html

scrapy item引用时报错

混江龙づ霸主 提交于 2020-04-26 12:15:34
使用pycharm制作scrapy爬虫,在spider模块时引用items.py中的模块报错,即出现红色的波浪线。 原因分析:   pycharm不会将当前文件目录自动加入自己的sourse_path。 解决方法:   右键make_directory as–>sources path将当前工作的文件夹加入source_path就可以了。 来源: oschina 链接: https://my.oschina.net/u/4338930/blog/4253966

WIndows下 Pycharm 配置Anaconda和TensorFlow

余生颓废 提交于 2020-04-26 08:27:09
1安装PyCharm    前提安装Python,然后去官网下载PyCharm 2 安装Anaconda   在官网下载Anaconda,并安装   下载好之后就跟安装一般的软件没啥区别,选择自己安装的文件夹,下一步就ok,需要注意下图中的两项都需要勾选: 接下来就是一小段时间的等待,可以去喝杯茶。等它安装完成后,在开始菜单找到并打开Anaconda控制台:Anaconda Prompt 执行命令 conda list 可以看到自己电脑上安装的一些包,至此Anaconda安装完成。 如果发现自己安装的Anaconda不是最新版本的,更新命令:conda update --prefix 安装路径 3 安装TensorFlow 1首先在Anaconda中配置Tensorflow环境,然后安装Tensorflow (1)因为要下载Tensorflow,所以我先在Anaconda的配置文件中添加清华镜像库,这样下载和更新的速度会快很多,命令: conda config --addchannels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --setshow_channel_urls yes (2)Tensorflow目前只支持Python3.5/3.6环境,而且在Python3