自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 配置apache+python虚拟环境的坑——mod_wsgi模块只支持在安装过程中编译它的Python版本

今天准备正式部署将自己的个人博客部署到云服务器上,结果怎么配置都无法连接上我的站点。起初我怀疑是服务器因为某些原因而无法连接,然而在开放了80端口之后,apache的默认000站点可以正常访问,ping测试也很正常。我又去检查了所有的配置文件,连一个标点符号都不放过,也没发现有错误。去查看apache错误日志后发现一直报这个错误[Thu Sep 24 11:37:43.769231 2020] [wsgi:error] [pid 1206:tid 139625453172480] [remote 14.2

2020-09-24 14:15:08 3011

原创 在服务器中安装MySQL

1、添加 MySQL APT 仓库官网的下载地址:MySQL APT Repository(https://dev.mysql.com/downloads/repo/apt/)不过在服务器上可没有图形界面可以操作。所以在服务器上有两种方法可以获得这个软件包:通过ftp从自己的电脑传输过去用wget命令下载我选择第二种方法。首先,我到官网那找到链接(https://dev.mysql.com/get/mysql-apt-config_0.8.15-1_all.deb)然后执行执行下面这条命令下

2020-09-22 21:34:12 425

原创 VirtualBox配置Ubuntu虚拟机完整过程

前言在VirtualBox下配置Ubuntu虚拟机的完整过程,写这篇博文倒不是因为这个过程有多难,纯粹就是想做个记录。网上实际上也能找到一些文章,就是比较分散。所以想写一篇完整版的,方便自己也方便大家查看。我在写这篇文章时,具体的环境如下:Win10主机VirtualBox6.1版本Lubuntu19版本(使用LXDE/LXQT作为桌面环境的Ubuntu版本)创建虚拟电脑与安装系统第一步,创建虚拟电脑。很简单,可以使用默认的配置先创建,要是觉得卡顿什么的再增加配置也行。注:使用Lubun

2020-09-22 19:05:28 692

原创 保护好自己的开源项目敏感信息(以Django框架为例)

前言:如果你要在Github或Gitee等网站开源自己的项目,请注意保管好隐私。当你开源了这些项目之后,就意味着每一个人都可以看你的源码。而很多情况下,你的源码里很可能包含一些很重要的信息,比如数据库的密码,或邮箱的账号或密码等。一旦你泄露了这些信息,轻则个人隐私泄露,重则服务器被黑,数据库数据泄露,甚至你的其他账号密码(你的各类账号的密码会不会相同或者相似?)全部泄露等。我是用Python的Django框架做后端的,所以我就只讲Django了,其他语言或框架的也可以参考一下。Django的setti

2020-09-13 15:42:18 1049

原创 django-ckeditor的动态存储路径

django-ckeditor的动态存储路径在安装好最新的django-ckeditor之后,关于django-ckeditor的简单配置我就不在赘述,网上已经有很多人写过了。详情也可以参考PyPI中的官方文档。这篇文章主要讲解django-ckeditor的动态存储路径,也就是路径生成器的配置与用法。我在这里花了很多的时间,而网上似乎很难搜到现成完整的配置过程和方法,特此在这里记录并分享。首先,要使用django-ckeditor的文件上传功能需要在settings.py中安装应用INSTALLE

2020-08-31 11:00:28 372

原创 Python 的条件赋值(选择性赋值)

在Python中可以通过使用精简版 if...else...语句来实现条件赋值,类似于一些语言的三目运算符>>> flag = 1>>> t = 'yes' if text == 1 else 'no'>>> t'no'>>> >>> x = 'yes' if text != 1 else 'no'>>> x'yes'>>> ...

2020-08-04 21:22:42 11164

原创 Python的特殊属性: __slots__

在Python中不知存在着特殊方法(魔术方法),还存在着特殊属性:__slots__在Python中,用户自定义的类的属性会默认保存在 __dict__ 属性中。__dict__ 属性对应的是一个用来储存类属性的字典。字典内的值可以通过简单的语句instanceName.__dict__直接查看,和查看一个普通的类属性一样。而 __slots__ 属性的作用就是:取代__dict__属性,将类属性保存到 __slots__中。__slots__属性是一个元组,具体用法如下:# Py...

2020-08-03 00:05:47 213

原创 在Python中,if a in b 的效率更高还是直接比较更高?

import timedef main_1(): li = [x for x in range(5000000)] start = time.clock() if 2500000 in li: end = time.clock() print('1-执行时间: ', end-start)def main_2(): x = 2500000 start = time.clock() if x > 0 and x &l.

2020-07-26 01:44:10 3185

原创 Python 创建多维空列表

# 以三维空列表为例3d_list = [ [ [] for j in range(9) ] for i in range(9) ]列表推导式的生成值可以是空列表 [],因此只要利用列表推导式的复合循环即可轻松达到目的

2020-07-23 01:04:45 7491 3

原创 【Python3.8 官方文档4.7.3.4】位置参数 name 和 **kwds 之间由于存在关键字名称 name 而可能产生潜在冲突

在 Python3.8 的官方文档中的 4.7.3.4的一个示例中:摘自原文:最后,请考虑这个函数定义,它的位置参数 name 和 **kwds 之间由于存在关键字名称 name 而可能产生潜在冲突:def foo(name, **kwds): return 'name' in kwds任何调用都不可能让它返回 True,因为关键字 'name' 将总是绑定到第一个形参。起初并不太理解这个函数,为什么说“任何调用都不可能让它返回 True”。在学习了 *和 **...

2020-07-16 16:21:54 392

原创 在Python,循环语句 for 和 while 竟然可以搭配 else 语句!!

循环语句可能带有 else 子句;它会在循环耗尽了可迭代对象 (使用 for) 或循环条件变为假值 (使用 while) 时被执行,但不会在循环被 break 语句终止时被执行。 以下搜索素数的循环就是这样的一个例子:>>> for n in range(2, 10):... for x in range(2, n):... if n % x == 0:... print(n, 'equals', x, '*', n//x)..

2020-07-15 16:08:46 2060

原创 Python中的比较操作的可传递性(a < b == c)

像 a < b == c这种比较操作在Python中是合法的这条操作的含义是:是否 a 小于 b 并且 b 等于 c

2020-07-15 14:54:44 3626 2

原创 Python中的del语句——变量删除

Python中的del语句作用是删除变量,而不是删除数据>>> a = 1 # 变量a赋值>>> b = a # 将a赋值给b>>> del a # 删除a变量>>> b # 查看b变量的值1>>> a # 查看a变量Traceback (most recent call last): File "<stdin&gt

2020-07-15 14:26:15 2298

原创 Django之test.py测试方法的命名(一个小坑)

Django之test.py测试方法的命名(一个小坑)Django测试如果运行结果为: run 0 tests in 0.000s请检查你在test.py中所写的类的方法的命名方式正确的命名应该以 test 开头。如果不是,Django将检测不到这个测试方法...

2019-11-13 21:37:12 284

原创 Django的图片上传与读取(完全攻略!!)

Django图片上传与读取完全攻略!!准备工作Django版本:2.2数据库模型字段直接使用 ImageField使用ImageField必须要安装第三方库Pillowsettings.py的配置(顶级settings)TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTempla...

2019-11-10 15:34:00 1830

原创 HTML5那些容易搞混的东东

前端那些容易搞混的东东margin和paddingmargin 是外边距padding 是内边距rem和emem的缩放比例是以父元素做参考的rem的缩放比例是以根元素做参考的——2019/10/28...

2019-10-28 19:44:36 171

原创 HTML5中name属性与id属性在使用上的区别

HTML5中name属性与id属性在使用上的区别在JS脚本中,若要精准的获得一个节点可以通过getElementById()来获得经实际使用(试坑)发现,getElementByName()是无法通过name属性获取节点的即在普通标签中加入name属性也不能通过getElementByName()方法来获得该节点实际上,在HTML5中name属性几乎唯一可用的地方就是在表单中,让服务器后端...

2019-10-28 18:14:23 518 2

原创 学习记录:Django 读取request.POST数据的方法

学习记录:Django 读取request.POST数据时所遇到的坑!废话不多说,直奔主题。在request.POST中读取网页上传的表单数据可以使用request.POST.get(‘name’)get(‘name’)方法中的name为表单中的name属性,填id属性是没用的。——2019/10/15...

2019-10-15 23:36:09 1740

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除