自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Neo

  • 博客(22)
  • 收藏
  • 关注

原创 再次理解python多继承mro的深度优先

最近在使用多继承时再次体验了一把mro,最近工作中遇到的简化以下代码结构既可以写出一个小例子,如下:class A(object): def __init__(self, params): self.a_name = 'name_a_{}'.format(params['name']) self.a_age = 'age_a_{}'.format(par...

2019-12-18 10:12:18 11404

转载 Shell标准输出、标准错误 >/dev/null 2>&1

eg:sudo kill -9 ps -elf |grep -v grep|grep $1|awk '{print $4}' 1>/dev/null 2>/dev/null命令的结果可以通过%>的形式来定义输出/dev/null 代表空设备文件代表重定向到哪里,例如:echo “123” > /home/123.txt1 表示stdout标准输出,系统默认值是1,...

2019-12-30 17:36:37 11530

原创 最简单的方式在window和Linux安装不同版本的python环境

Linux我们在centos7上做实验,它自带python2.7,现在我们要安装一个python3.7.5# 从官网下载对应版本的源码https://www.python.org/downloads/source/# 解压$ tar -zxvf xxxxx$ cd xxxx# 创建安装目录$ sudo mkdir -p /usr/local/python3# 配置、...

2019-12-27 19:36:26 11542 2

原创 复习一下工厂模式

目录简单工厂模式工厂方法模式抽象工厂模式总结简单工厂模式说明:以下例子都是在python3.x中运行的简单工厂模式最大的优点在于实现对象的创建和对象的使用分离,将对象的创建交给专门的工厂类或者方法负责,但是其最大的缺点在于工厂类不够灵活,增加新的具体产品需要修改工厂类的判断逻辑代码,而且产品较多时,工厂方法代码逻辑将会非常复杂。栗1.class Animal(object): d...

2019-12-22 17:46:05 11068

原创 大学啃过的设计模式

目录1.什么是设计模式?2.设计模式的分类。3.设计模式的七大原则。4.新手误区。1.什么是设计模式?简单来说就是一本编程界的如来神掌。它能提高程序员的思维能力、编程能力和设计能力。它是解决特定问题的一系列套路,有一定的普遍性。它是一套被反复使用、多数人知晓的、代码设计经验的总结。它可以提高代码的可重用性、代码的可读性和代码的可靠性以及可扩展性。它能使程序设计更加标准化,使软件开发...

2019-12-22 15:31:41 11132

原创 python中format时对大括号的转义

在对字符串处理时,更喜欢用format来进行相应的处理,但是如果我们的字符串是下面这样一个字符串exec_command呢?hana_adm = 'hxe_adm'full_backup_file = '/tmp/flashbackup_tmp/117/systemdb/full_databackup_0_1'exec_command = "su - {} -c \"hdbbackupche...

2019-12-19 19:20:38 22194 1

转载 linux中inode包含什么内容?

一、inode是什么?理解inode,要从文件储存说起。文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block)。这种由多个扇区组成的"块",是文件存取的最小单位。“块"的大小,最常见的是4KB,即连续八个 sect...

2019-12-19 18:54:53 11886

转载 非常详细的/etc/passwd解释

cat /etc/passwdroot:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin desktop:x:80:80:desktop:/var/lib/menu/kde:/sbin/nologin mengqc:x:500:50...

2019-12-17 11:27:45 11456

转载 通俗易懂QPS、TPS、PV、UV、GMV、IP、RPS的概念解释

前言关于 QPS、TPS、PV、UV、GMV、IP、RPS 这些词语,看起来好像挺专业。但实际上,我认为是这是每个程序员必懂的知识点了,你可以搞不懂它们怎么计算的,但是你最少要了解它们分别代表什么意思。QPSQueries Per Second,每秒查询数。每秒能够响应的查询次数。QPS 是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准,在因特网上,作为域名系统服务器的机器的...

2019-12-17 00:07:37 12364

原创 suse12中pip install xxx报错gcc: error: unrecognized command line option ‘-fstack-clash-protection’

我们在Linux中安装某些python的第三方包时,有时候需要gcc来进行协助编译安装(例如psutil、pycrypto等)1.很不幸,最近在suse中用pip install psutil时就遇到以上错误了:2.经查阅资料后发现gcc: error: unrecognized command line option ‘-fstack-clash-protection’是因为gcc版本的问...

2019-12-15 10:12:11 13666

原创 suse升级gcc到gcc4.8.5或者更高的版本

1.确保suse Linux已经安装好的gcc,可以用gcc -v检查,如果没有需要先安装一个版本的安装方法参考这篇文章2.下载gcc-4.8.5源码包下载方式一:wget ftp://ftp.gnu.org/gnu/gcc/gcc-4.8.5/gcc-4.8.5.tar.gz下载方式二:百度云下载链接提取码: iu2i3.解压tar zxf gcc-4.8.5.tar.gz4.下...

2019-12-15 07:18:50 13886

原创 suse-12 离线安装gcc gcc-c++,免积分下载rpm包

由于工作需要,需要在suse12上安装gcc编译环境,看了一遍文章,说真的那个资源包完全没得必要搞个积分下载,而且给的教程里面也有很不完整的地方!!!免积分下载安装包,百度云地址提取码: yxy11.首先解压百度云下载下来的压缩包,解压后如下图:2.安装glibc需要的包,安装顺序如下:rpm -ivh linux-glibc-devel-3.7.1-2.1.noarch.rpmrpm...

2019-12-15 07:18:33 14716 11

原创 Python Popen communicate() 和wait()的区别体验

测试环境centos7ulimit -a 看到的 pipe size 是 4KB,那只是每页的大小,查询得知 linux 默认的 pipe size 是 64KB。简单说communicate() 和wait()的区别,使用 subprocess 模块的 Popen 调用外部程序,如果 stdout 或 stderr 参数是 pipe,并且程序输出超过操作系统的 pipe size时,如果使用...

2019-12-11 11:49:14 17993

原创 python中encode和decode的总结

decode的作用是将其他编码的字符串转换成unicode编码encode的作用是将unicode编码转换成其他编码的字符串1.python3和python2默认的编码方式是不一样的,如下图2.unicode 转换为其它编码(GBK, GB2312等)# -*- coding=gb2312 -*-a = u"这里是中国,犯我中华者,虽远必诛"print aa_gb2312 = a...

2019-12-10 19:56:55 11053

转载 Shell基础语法整理1

一、变量赋值,变量传参定义变量 – 字母 readonly 变量只读(不可改变值) unset(删除变量)#!/bin/bashvalue="hello" # 定义(不用 $)不可以有空格不然会出错 重定义也是这样的方式echo $value #用 $符号使用用变量的值echo "${value} world" # 在字符串中也可以引用变量 {} 用于边界检测方便划分可以不用写...

2019-12-10 16:59:23 11164

原创 python socket编程知识汇总

Python 提供了两个基本的 socket 模块。第一个是 Socket,它提供了标准的 BSD Sockets API。第二个是 SocketServer, 它提供了服务器中心类,可以简化网络服务器的开发。下面讲的是Socket模块功能1、Socket 类型套接字格式:socket(family,type[,protocal]) 使用给定的地址族、套接字类型、协议编号(默认为0)来...

2019-12-09 23:52:56 11173

原创 单链表部分实现

熟悉c语言以及数据结构的朋友们都知道,链表简单的说就是由很多个节点连接而成(有点像火车一样),每个节点分为指针域(next)和数据域(data),一个节点的指针域指向下一个节点(指针域用来存放下一个节点的地址)以下代码均由python3实现1.利用类实现一个简单的链表class SingleLinkedList(object): def __init__(self): ...

2019-12-08 00:26:08 11194

原创 python高级文件、文件夹、压缩包 处理模块shutil

我们来看一看shutil有哪些接口很多吧,之所以说它高级,举个简单的例子吧例如我们在删除文件时,用os.remove也可以实现,但是它只能一次删除一个,然而我们的shutil.rmtree可以递归删除某个目录下说有的文件以及目录当然shutil的功能远不如此,下面我们就来简单的列举一下1.shutil.copyfileobj(fsrc, fdst[, length])(copyfileo...

2019-12-05 23:48:41 11146

原创 json的两种格式以及python中json的序列化的两种方式

1、键值对形式{ "label": "edb1.yuchai.com(10.10.182.11)", "open": true, "inode": true, "checkbox": false, "id": "5714bc22b4b24604a45452fd2cca38b0", "branch": [{ "label": "/dev/dm-7(Linux device-mapp...

2019-12-02 23:47:03 11615

原创 从yield到yield from

yield带有 yield 的函数不再是一个普通函数,而是一个生成器generator把生成器当作管道def add_A(seq): for item in seq: yield item + '-A'def add_B(seq): for item in seq: yield item + '-B'def add_C(seq):...

2019-12-01 23:14:04 11091

原创 python中for循环的原理剖析

简述当我们在使用for循环时,即重复运行一个代码块,或者不断迭代容器对象中的元素,比如一些序列对象,列表,字典,元组,甚至文件等,而for循环的本质取出可迭代对象中的迭代器然后对迭代器不断的操作。例如迭代文件:注:本文针对的示例是针对Python3,同时对Python2做了注释,注意区分自己使用的版本。>>> for line in open("requirement.t...

2019-12-01 22:12:58 13240

原创 django中model的对应关系

django模型python manage.py makemigrationspython manage.py migrate一、一对多class A(): name=.... passclass B(): ab=models.Foreignkey(A,related_name='bs')Agraph LRA(一)–>B(多)一个A对应的所有B,...

2019-12-01 18:00:13 11549

空空如也

空空如也

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

TA关注的人

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