- 博客(477)
- 资源 (11)
- 收藏
- 关注
原创 python str和bytes相互转换
str的encode()方法,它是从字符串向比特流的编码过程;bytes的decode()方法则相反,是从比特流转换成字符串。str转bytes:>>> # -*- coding: utf-8 -*->>> >>> def to_bytes(param): if isinstance(param, str): value =...
2019-04-13 21:34:25 790
原创 Flask Web服务器hello world
一些概念:所有Flask应用都必须创建一个应用实例。WSGI:Web serve gateway interface,是Web服务器网关接口。路由:处理URL和函数实例之间关系的程序称为路由。视图函数:应用根地址的处理程序。下面是一个最简单的Flask Web应用程序:# -*- coding:utf-8 -*-from flask import Flask# Flask...
2019-04-13 18:05:04 245
转载 PyCharm常用快捷键和设置
最重要的快捷键1. ctrl+shift+A:万能命令行2. shift两次:查看资源文件新建工程第一步操作1. module设置把空包分层去掉,compact empty middle package2. 设置当前的工程是utf-8,设置的Editor-->File Encodings-->全部改成utf-8,注释1. ctrl+/:单行注释提示CTRL Q...
2019-03-09 22:50:02 418
转载 python中的三元表达式(三目运算符)
python中没有其他语言中的三元表达式,不过有类似的实现方法其他语言中,例如java的三元表达式是这样int a = 1;String b = "";b = a > 1? "执行表达式1":"执行表达式2"System.out.println(b)在python中只有类似的替代办法,如果a>b的结果为真,h="变量1",如果为假,h="变量2"a
2019-03-09 22:31:15 228
原创 python实现引用作为函数参数
先看下如下python的关键字参数函数运行前后,可以看到,字典在函数运行前后,并没有发生变化。def info(**kw): sex = 'male' kw['sex'] = sex print(kw) >>> kwargs = {'name': 'xiaoming', 'age':10} >...
2019-03-09 22:18:12 473
转载 Flask开发微电影网站(十)
1.后台管理之角色管理1.1 角色管理之定义角色表单在app的admin目录的forms.py文件中,定义角色表单# 角色表单class RoleForm(FlaskForm): name = StringField( label="角色名称", validators=[ DataRequired("请输入角色名称...
2019-03-04 21:35:39 337
转载 Flask开发微电影网站(九)
1.后台管理之电影管理1.1 电影管理之所有电影收藏列表1.1.1 电影管理之电影收藏列表视图函数在admin目录下的views.py文件中定义电影收藏列表视图函数电影收藏列表视图函数需要被登录控制装饰器和权限控制装饰器同时装饰@admin.route('/moviecol/list/<int:page>/', methods=["GET"])@admi...
2019-03-04 21:31:00 354
转载 Flask开发微电影网站(八)
1.后台管理之电影预告管理1.1 定义电影预告表单在app的admin目录的forms.py文件中,定义电影预告表单# 预告表单class PreviewForm(FlaskForm): title = StringField( label="预告标题", validators=[ DataRequired("请输...
2019-03-04 21:26:24 579
转载 Flask开发微电影网站(七)
1.后台管理之电影管理1.1 定义电影表单在app的admin目录的forms.py文件中,定义电影表单# 电影表单class MovieForm(FlaskForm): title = StringField( label="片名", validators=[ DataRequired("请输入片名!") ...
2019-03-04 21:23:23 323
转载 Flask开发微电影网站(六)
1. 后台管理登录功能实现1.1 后台管理页面登录表单LoginForm在app的admin目录下创建forms.py文件,用来保存admin蓝图中需要使用到的表单from flask_wtf import FlaskFormfrom wtforms import StringField, PasswordField, SubmitField, FileField, TextA...
2019-03-04 21:00:45 510
转载 Flask开发微电影网站(五)
后台管理页面是系统管理员登录后对网站进行管理的前端页面后台登录页面,如下图所示管理员登录后的页面,如下图所示管理员登录后,在右上角显示的管理员信息,如下图所示管理员登录后,在页面中间部分的左侧显示管理菜单管理菜单包括控制面板,标签管理,电影管理,预告管理,会员管理,评论管理,收藏管理,日志管理,权限管理,角色管理,管理员管理等菜单,每个菜单下有子菜单进行细分管理控制...
2019-03-04 20:58:17 450
转载 Flask开发微电影网站(四)
会员中心页面,如下图所示用户登录后,修改密码页面,如下图所示用户查看自己的评论页面,如下图所示用户查看自己的登录日志页面,如下图所示用户查看自己收藏的电影的页面,如下图所示1. 定义用户主页面左侧部分在上面的图片里,可以看到,整个页面的顶部和左侧都是一样的在之前,已经把顶部部分单独定义在templates目录的home目录下这里可以把用户主页的左...
2019-03-04 20:54:16 547
转载 Flask开发微电影网站(三)
页面完成后的最终布局电影视频网站首页面会员登录页面会员注册页面点击退出和会员按钮,直接进入会员登录页面视频播放页面可以看到,页面共同的部分是顶部导航和底部导航所以我们可以把页面顶部导航和底部导航部分单独定义一个文件home.html,然后让需要使用顶部导航和底部导航的页面都继承home.html页面1.创建父模板home.html在templ...
2019-03-04 20:49:51 667
转载 Flask开发微电影网站(二)
1.安装数据库连接依赖包pip install flask-sqlalchemy2.创建movie数据库在CentOS虚拟机,进入MaridDB数据库提示符,创建movie数据库create database movie3.定义MaridDB数据库连接在app目录下的__init__.py文件中添加以下内容# _*_coding:utf-8_*_from ...
2019-03-04 20:44:25 614
转载 Flask开发微电影网站(一)
1.用到的Flask知识1.使用整形,浮点型,路径型,字符串型下正则表达式路由转化器 2.使用GET与POST请求,上传文件,cookie获取与响应,404处理 3.使用模板自动转义,定义过滤器,定义全局上下文处理器,Jinja2语法,包含,继承,定义宏 4.使用flask-wtf定义表单模型,字段类型,字段验证,视图处理表单,模板使用表单 5.使用flask-sqlachemy定义数...
2019-03-04 20:39:58 1246
转载 flask模板
做为python web开发领域的一员,flask跟Django在很多地方用法以都是相似的,比如flask的模板模板就是服务器端的页面,在模板中可以使用服务端的语法进行输出控制1.模板的工作原理在视图函数中,通过render_template方法返回一个页面,然后通过Jinja2语法来进行渲染简单来说,就是把服务器端的html页面解释成用户看到的页面,而视图函数是通过上下文对象来进...
2019-03-04 20:36:19 147
转载 python函数式编程之yield表达式形式
先来看一个例子def foo(): print("starting...") while True: res = yield print("res:",res)g = foo()next(g)在上面的例子里,因为foo函数中有yield关键字,所以foo()函数的执行结果g是一个生成器,此时可以使用next(g)或者g.__...
2019-03-04 20:29:55 120
转载 python中的闭包函数
闭包函数初探通常我们定义函数都是这样定义的def foo(): pass其实在函数式编程中,函数里面还可以嵌套函数,如下面这样def foo(): print("hello world in foo") def bar(): print("hello world in bar")此时我们调用foo函数,执行结果会是什么样子的...
2019-03-04 20:10:58 316
转载 python3的zip()函数
zip函数接受任意多个可迭代对象作为参数,将对象中对应的元素打包成一个tuple,然后返回一个可迭代的zip对象.这个可迭代对象可以使用循环的方式列出其元素若多个可迭代对象的长度不一致,则所返回的列表与长度最短的可迭代对象相同.用法1:用两个列表生成一个zip对象例1>>> a1=[1,2,3]>>> a2=[4,5,6]>>...
2019-03-04 19:51:04 123
原创 struct.pack()、struct.unpack()和struct.calcsize()
python处理二进制字节流时,或跨平台如对标c/c++的short、long、double、结构体等类型,或处理socket数据、文件等情况,可以用struct,转换和解析函数为struct.pack()和struct.unpack()。help(struct.pack) Help on built-in function pack in module _struct...
2019-02-24 19:02:40 9249 1
原创 python eval函数
主要用于求值,特殊之处在于表达式是以字符串的形式书写的,并且求值完之后返回结果。help(eval)Help on built-in function eval in module builtins: 内建函数eval(source, globals=None, locals=None, /) Evaluate the given source in the context o...
2019-02-24 14:50:35 508
原创 python的all()与any()
all()和any()是python的内建函数。 help(all)Help on built-in function all in module builtins:all(iterable, /) Return True if bool(x) is True for all values x in the iterable.如果所有的值都为True,则返回True。 ...
2019-02-23 22:17:10 1037
原创 python中的None、‘’、' '、0、False和空容器
python一切皆对象。None是python的一个内建值,它确切的含义是“这里什么也没有”。简而言之,python把None、0、空字符串''、空容器如空列表[]、空元组()、空字典{}等一系列代表空和无的对象转换成False,其它数值、非空字符串和非空对象都转成True。1.None>>> a = None>>> a>>> t...
2019-02-23 21:39:38 5401
原创 Python的函数重载(二)----参数类型
上一篇写了Python的函数重载(一)----参数个数,总结了函数重载的两种情况:https://blog.csdn.net/Gordennizaicunzai/article/details/77920917函数重载主要是为了解决两个问题。1、可变参数类型。2、可变参数个数。对于情况1,python根本不需要处理,因为python可以接受任何类型的参数,如果函数的功能相同,那么...
2019-02-17 21:20:33 667
原创 python整型、浮点型分别与字符串互转
1、str()将整型、浮点型转换成字符串>>> num = 999 >>> s = str(num) >>> type(s) <class 'str'>>>> s '999'>>> >>&g
2019-02-17 16:53:15 2688
转载 Python数据格式:%s字符串,%d整型,%f浮点型
格式化符%name="Tom"age=int(input("age"))pt2="%s你的年龄是%d"%(name,age)print(pt2)%% 百分号标记 #就是输出一个%%c 字符及其ASCII码%s 字符串%d 有符号整数(十进制)%u 无符号整数(十进制)%o 无符号整数(八进制)%x 无符号整数(十六进制)%X 无符号整数(十六进制大写字符)%e 浮...
2019-02-17 11:13:37 706
转载 Flask中路由使用解析
Flask简介Flask是一个相对于Django而言轻量级的Web框架。和Django大包大揽不同,Flask建立于一系列的开源软件包之上,这其中 最主要的是WSGI应用开发库Werkzeug和模板引擎Jinja:策略 :werkzeug和Jinja这两个库和Flask一样,都是pocoo团队开发的。这 或许体现了pocoo与Django竞争时关于生态的一种策略,这种策略的自然 延伸是...
2019-01-13 21:35:35 268
转载 【Flask-RESTPlus系列】Part3:请求解析
0x00 内容概览请求解析 基本参数 必需参数 多值和列表 其他目标 参数位置 参数多个位置 高级类型处理 解析器继承 文件上传 错误处理 错误消息 参考链接0x01 请求解析注意:Flask-RESTPlus的整个请求解析器部分将被移除,并将替换成关于集成其他更善于处理输入、输出的包(例如marshmallow)的说明文档。但是考虑到已经...
2019-01-11 00:09:05 963
转载 【Flask-RESTPlus系列】Part2:响应编组
0x00 内容概览响应编组 基本使用 重命名属性 默认值 自定义字段及多值情况 Url及其他具体字段 复杂结构 列表字段 嵌套字段 api.model()工厂 clone实现复制 api.inherit实现多态 自定义字段 跳过值为None的字段 跳过嵌套字段中的None字段 使用JSON Schema定义模型 参考链接0x01...
2019-01-11 00:00:20 854
转载 【Flask-RESTPlus系列】Part1:快速入门
0x00 内容概览Flask-RESTPlus安装 快速入门 初始化 一个最简单的API示例 资源路由 端点 参数解析 数据格式化 顺序保留 完整例子 0x01 Flask-RESTPlus安装1、Python版本兼容性当前Flask-RESTPlus的最新版本为v0.11.0,支持2.7或3.4+版本的Python。2、安装方式可以通过以...
2019-01-10 23:33:40 1515
原创 @classmethod
python的classmethod方法,修饰的函数不需要实例化,不需要self参数,通过cls可以访问类的相关属性、类的方法、类的实例化对象等。类方法以cls作为第一个参数,cls表示类本身。定义时使用@classmethod装饰器。>>> class Student(object): ''' This is a Student class. ...
2019-01-10 23:24:46 575
转载 Python 2.x版本与3.x的不同
__future__模块Python 3.x引入了一些与Python 2不兼容的关键字和特性,在Python 2中,可以通过内置的__future__模块导入这些新内容。如果你希望在Python 2环境下写的代码也可以在Python 3.x中运行,那么建议使用__future__模块。例如,如果希望在Python 2中拥有Python 3.x的整数除法行为,可以通过下面的语句导入相应的模块。 ...
2019-01-07 00:06:25 663
转载 创建numpy数组的不同方式
Numpy库的核心是数组对象或ndarray对象(n维数组)。你将使用Numpy数组执行逻辑,统计和傅里叶变换等运算。作为使用Numpy的一部分,你要做的第一件事就是创建Numpy数组。本指南的主要目的是帮助数据科学爱好者了解可用于创建Numpy数组的不同方式。创建Numpy数组有三种不同的方法:使用Numpy内部功能函数 从列表等其他Python的结构进行转换 使用特殊的库函数#使...
2019-01-05 23:29:20 765
原创 numpy.linspace
numpy(Numerical Python)是Python的一个开源扩展库,支持大量的多维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库,下面介绍其中的等差数列函数linspace。numpy.linspace功能是创建一个等差数列构成的一维数组,原型为numpy.linspace(start, stop, num=50, endpoint=True, retstep=Fal...
2019-01-05 23:17:34 255
转载 C++换行
编写代码时遇到代码超长的情况,为了代码的美观及方便调试,需要涉及到代码的换行问题。以下讨论了几种情况: 1、#define宏#define MAX(a,b) \ ((a) < (b) ? (b) : (a)) 等价于#define MAX(a,b) ((a) <(b) ? (b) : (a)) 2、关键字的换行关键字换行支持:+ - * /...
2019-01-02 23:56:48 6637
原创 error LNK2001: unresolved external symbol xxx
VC++6.0如果需要添加外部的c、cpp、h文件,直接将c、cpp、h文件拷贝到工程目录下,然后#include,是不行的,编译时会出现error LNK2001错误。这是因为这些文件不是通过VC IDE自己创建的,工程文件(dsp)里没有这些文件的配置信息。解决办法是在dsp文件里面添加配置信息。# Begin Source FileSOURCE=.\xxx.c# End Sour...
2019-01-02 23:40:34 2827
原创 VC++标准化路径PathCanonicalize
外部输入的参数不能直接作为文件路径,防止被恶意攻击,比如构造一个跨目录限制的文件路径../../../etc/passwd或../../boot.ini,或构造一个指向系统关键文件的链接文件symlink("/etc/shadow","tmp/log")。PS "./"表示当前目录,可以不写,"../"表示当前目录的上一级目录,即当前目录的父目录。windows可以用PathCanonicaliz...
2018-12-31 22:35:16 4698
原创 VC++多线程多个参数传递
VC++多线程多个参数传递时,根据LPVOID可以传任意参数地址,所以多参数传递可以将参数变为类、数组、结构体,然后把这些数据类型的地址传递进去。因为传的是地址,所以实现线程函数里、外参数可持续互换。typedef struct _S_Test{ int iNum; char caWords[50]; CString csItem;}S_Test;DWORD WINAPI Th...
2018-12-27 23:54:35 1311
原创 VC++多线程单个参数传递
// MultipleThreadParam.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include <stdio.h>#include <afx.h>DWORD WINAPI ThreadFun1(LPVOID lpParam){ p...
2018-12-27 22:52:35 372
原创 CStringArray实现循环数组设计的FIFO
简要设计思路是:首先CStringArray中先设置数组大小(SetSize),相当于申请了一个普通数组,作为存储Item的容器,然后设计一个FIFO Queue,用来当作CStringArray的index获取数组的Item,同时通过比较Queue和Array的大小将Queue的头和尾适当调整指向,实现循环数组存取。#include "afxcoll.h"class FifoCStri...
2018-12-24 00:53:39 306
Visual Leak Detector-1.0
2016-02-21
AT89S52单片机的数码管的动态显示程序
2010-05-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人