Python:打印对象的所有属性值的方法!
开发中的需要,简单代码实现,打印对象的所有属性值的方法!
运行环境 Runtime environment123操作系统 : Windows10 IDE: JetBrains Python 2018.2.4 x64 语言: Pytthon 3.65
背景开发中的需要,简单代码实现,打印对象的所有属性值的方法!直接用命令某些情景下不太方便,在这里使用打印的方式来展示。
代码实例123def prn_obj(obj): print '\n'.join(['%s:%s' % item for item in obj.__dict__.items()])
小技能GET:Ubuntu18.04安装Nginx!
更新过Ubuntu18后还没有尝试过安装Nginx,安装一次看看有没有什么不同的要注意的地方。
运行环境 Runtime environment1操作系统 : Ubuntu18.04LTS
背景没什么背景,项目测试需要,本地安装Nginx也是为了测试。
安装nginx在Ubuntu中,右键打开终端,在终端中输入以下命令:
sudo apt-get install nginx
Ubuntu安装之后的文件结构大致为:
所有的配置文件都在/etc/nginx下,并且每个虚拟主机已经安排在了/etc/nginx/sites-available下
程序文件在/usr/sbin/nginx
日志放在了/var/log/nginx中
并已经在/etc/init.d/下创建了启动脚本nginx
默认的虚拟主机的目录设置在了/var/www/nginx-default (有的版本 默认的虚拟主机的目录设置在了/var/www, 请参考/etc/nginx/sites-available里的配置)
Nginx操作命令查看版本:sudo /usr/sbin/nginx -v
启 ...
Web前端:设计网页,常见的宽度!
网页设计中,宽度的设置,是没有绝对固定的值的,根据我们的需求出发。只能说从常用的那几种分辨率来入手。
背景初学html是老师告诉我们的是一般960px,
现在应该有好多这样宽度的设计,不过现在显示屏的设备一般在1024以上了,
比如现在的笔记本一般是1336*768,
这有那些大头的显示屏分辨率保持在1024左右,
新的液晶显示屏也都已经达到了1440*900的分辨率,
所以现在设计的话一般是960px,980px,1000px,1024px!
而且好多现在也都是做成自适应的方式!因为最近手持移动设备屏幕越来越大,网络越来越发达,流量也越来越多,网站并不局限于在pc上浏览,平板与手机已经占据大多数!所以要综合考虑!所以,定宽模式就不再赘述了,如果不是初学者,感觉定宽模式是需要经量避免的。最好的做法就是做成自适应模式!
自适应模式可能很多人听过,响应式布局,尤其前几年 H5 崛起的时候,很多初级网页设计师都觉得,网页设计以后就应该支持全平台,那些老的定宽规格都应该被淘汰。但是,宽度自适应模式和响应式设计不是完全相等的。
响应式设计,是在多种平台下可以良好显示和运行的一种框架,在不同的宽 ...
随笔:关于前端响应式的一些吐槽
随便扯个蛋,写前端写得我郁闷了。
首先,我确实不打算有过太深入得招致。我之所以折腾前端是为了服务自己的从业方向—后端。
有句话是这么讲,技多不压身,但是贪多嚼不烂也是个很大的问题。
今天开发有关响应式网页的时候,虽然也不是第一次这么干了,但是心中的某种感觉确实越来越强烈。
响应式网页的成本和投入真的太大了,这个真的不是靠个Boostrap就能解决的。我看过很多网站他们对于网页移动端支持,给我感觉几乎可以说半放弃的态度。
有条件的,主力必定会在移动端app上下大功夫,然后在弄一个小分辨率的网页样式,就完了。
就比如说:http://book.sfacg.com 整个网站,严格上来讲,它根本没有去做响应式。而且是直接第一次访问的时候,它获取了分辨率大小就直接跳转类似与 https://m.sfacg.com/ 开头带m的网页,如果把窗口拉大,也不会从m前缀变成www前缀。
这样办,是真的省事啊。我不知道该说自己是学到了,还是自己吃了亏了。
响应式网页开发的成本果然不低,移动端的分辨率千奇百怪,想要完美响应式,这工作量真的是太高了。
事实上,我也觉得自己有点恐怖。
一个人,去做一整个Web ...
【转载】:发布一个 GitHub 仓库时需要注意的东西
本文全部源于我个人总结,绝对不保证权威性,反正我自己做到不坑你们,你们信不信就是你们的事了。另外,我自己是做到了遵守这些准则的。
GitHub 对我来说是在自己没有工作的时候应该好好整出一个优秀的账号的网站,据说对以后找工作啥的有帮助。所以开仓库就一定要注意了,最近我看到很多人开仓库开的很暴力,而且在很早之前我就想过要写篇博客讲这个了,今天才填坑真是对不起。
请大家期待我即将出的国内使用 Gradle 的正确姿势的教程,会有文字博客和视频教程。绝对天地良心,保证不坑,随后还会附带 Travis CI 的部署教程,也绝对保证不坑。
毕竟,教程要是坑,怎能带你入坑?
什么是暴力开仓库?就是开很糟糕的仓库,放在开源界会被鄙视的项目。
这里排除 IntelliJ-Community 这种比较特殊的仓库,因为人家第一不怕网速慢,第二人家把包都放在仓库里面,免得各种版本不对,这是针对公司的做法 (比如你自己公司也用 Git ,那么这么做是无可厚非的,但是个人项目最好注意一下)。
这也是构建工具出现的原因——由于老是有库,版本还老是换,导致仓库太大了。
注意点首先,一个稍微正常点的 Git 仓库都 ...
Web前端:Emmet语法,前端利器!
Emmet使用特定的语法来展开小段代码,它类似CSS选择器,使其成为完整的HTML代码。
运行环境 Runtime environment123操作系统 : Windows10IDE: JetBrains WebStorm 2018.2.1 x64浏览器: Google Chrome 版本 67.0.3396.99(正式版本) (64 位)&& FireFox Developer Edition 版本63.0b4 (64位)
背景感觉背景似乎也没有人看的啦。主要是为方便自己前端开发能够更加省事,所以需要使用Emmet语法。这已经成为了一种习惯了,确实可以提高开发效率,总是复制粘贴什么的,也是略烦的事情。本人使用的是 Webstrom 代码编辑器,因此是内置了 Emmet 语法的。如果你使用的是 Sublime或者Notapad++ 编辑器的话,可以去下载相应插件,这个在网上都是有教程的,可以去搜索一下。
Emmet(以前名为Zen Coding)是一套面向文本编辑器的插件,它允许通过内容辅助高速度的编写和编辑HTML、XML、XSL和其他结构化的代码格式。此项目2 ...
Web后端:Django2.0+里urls.py里配置的改变!
想把Django项目从Django1.11升级到Django2,当中有不小改动。其中的url.py的用法就发生了很大的变化,链接更加灵活,减少了正则匹配的使用了。
运行环境 Runtime environment123操作系统 : Ubuntu18.04IDE: JetBrains pycharm 2018.2.4 x64Python: 3.6
背景从Django2.0开始,urls.py配置方法有很大改变,所以老项目升级的时候,那报错真是哇哇直叫啊。
主要变化
把url函数换成path
不在使用^、$作为路由
其他地方以后再进一步研究
具体案例url.py文件的样例代码:
1234567891011from django.contrib import adminfrom django.urls import path #此处应用path,老板本使用的是urlfrom appchat import viewsurlpatterns = [path('admin/', admin.site.urls),path('login/ ...
Web后端:MysqlClient包的安装
想把Django项目从Django1.11升级到Django2,当中有不小改动。其中就包括这个MysqlClient。
运行环境 Runtime environment123操作系统 : Ubuntu18.04IDE: JetBrains pycharm 2019.2.4 x64Python: 3.6.9
背景Django升级到2.+版本以后,因为之前使用的是pymysql,官方建议使用mysqlclient,更新到最新版本(最低支持1.3.3)。所以这次项目的升级也要把相应的包也做升级。
安装MySQL数据库(如果已经安装过,可跳过)具体步骤如下:
apt-get updateapt-get install python-pip (已经有pip命令则跳过此步骤)apt-get install mysql-serverapt-get install mysql-client
安装MysqlClient因为MysqlClient是依赖MySQL的,所以MySQL数据库必须先安装后,再安装它。而且MysqlClient它本身还需要一些其他依赖包,一般情况下,Ubuntu直接安装 ...
Web后端:Django中快速安装部署uWSGI!
短短的几步,简单易懂的完成uwsgi和Django的配合使用!
运行环境 Runtime environment123操作系统 : Ubuntu18.04IDE: JetBrains pycharm 2018.2.4 x64Python: 3.6
背景Django项目中,为了测试,它内置了一个测试服务器。使用“python managy.py runserver 192.168.x.xxx:xxxx”的命令就可以部署。但是实际部署项目的时候,它是非常脆弱的,高访问量的情况下,就会爆炸了。于是,uWSGI就诞生了!uWSGI是一个“旨在开发用于构建托管服务的完整堆栈”的软件应用程序。它以Web服务器网关接口命名,这是该项目支持的第一个插件。uWSGI通常用于与Web服务器(如Cherokee和Nginx)一起提供Python Web应用程序,后者为uWSGI的本机uwsgi协议提供直接支持。它本身更是由C语言编写的,运行速度不用担心了23333!!
uWSGI的快速部署
打开终端,在终端黑窗口中输入命令,通过pip进行安装:
pip install uwsgi
下载安装完毕,以后 ...
小技能GET:Ubuntu激活创建root!
在安装ubuntu系统时,root账户并没有激活而是被隐藏了,只能通过sudo命令来完成一些需要root权限的任务,从而保证了你的系统安全。若你需要使用root用户权限来完成一些工作的话,可用以下两种方式激活root用户。
运行环境 Runtime environment12操作系统 : Ubuntu10 Software: VMware
背景在安装ubuntu系统时,root账户并没有激活而是被隐藏了,只能通过sudo命令来完成一些需要root权限的任务,从而保证了你的系统安全。出于某些使用的目的,而且也为了安全,所以建议激活root并且设立一个独立的强密码。
基本步骤以下两种方式激活root用户:
第一种
在终端中输入:sudo passwd root
输入两次root用户的密码
通过su root命令即可登陆root用户或选择重启后登陆root用户第二种
重启电脑,选择recovery模式
找到最下边的root选项
在recovery模式的root用户下创建一个root用户,输入:passwd root
输入两次root用户密码
重启后进入root用户
总结一般来说,使用 ...