1. 面向过程编程

面向过程编程,核心是过程二字,过程指的是解决问题的步骤,即先干什么、后干什么、再干什么、然后干什么……

基于该思想编写程序就好比在设计一条流水线,面向对称编程其实是一种机械式的思维方式

优点: 复杂的问题流程化,进而简单化

缺点: 一旦要修改功能 那么需要整体改造(牵一发而动全身)

阅读全文 »

CGroup

CGroups概述

CGroups 全称为 Linux Control Group,其作用是限制一组进程使用的资源(CPU、内存等)上限,CGroups 也是 Containerd 容器技术的核心实现原理之一

阅读全文 »

异常捕获(二)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
try:
name
except Exception as e:
print("代码错误")
else:
print('代码正常才会执行了')
finally:
print('代码不管是否异常都会运行')

# 断言
name = 'jason'
assert isinstance(name, str)

# 主动抛出异常
raise ZeroDivisionError('除数不能为0')
阅读全文 »

1. 常用内置函数

1.1 map()

1
2
3
4
# map()  # 映射
l = [11, 22, 33, 44]
res = map(lambda x: x + 1, l) # 循环获取列表中的每个元素并交给匿名函数保存返回值
print(list(res)) # [12, 23, 34, 45]
阅读全文 »

1. 装饰器定义

1
2
3
4
5
6
7
8
9
10
装饰器由名称空间,函数对象,闭包函数组合而来

装饰:给被装饰对象添加额外的功能
器:指的是工具

装饰器的原则:开放封闭原则
开放:对扩展开放
封闭:对修改封闭

装饰器核心思想:在不改变被"装饰对象内部代码""原有调用方式"的基础上添加额外的功能
阅读全文 »

1. 名称空间作用域

  1. 作用域

    1
    名称空间所能够作用的范围
  2. 内置名称空间

    1
    程序任何阶段位置均可使用(全局有效)
    阅读全文 »

安装nginx

1
2
3
4
5
6
7
8
9
10
11
#全一些的依赖
yum install -y libxml2 libxml2-devel openssl \
openssl-devel bzip2 bzip2-devel libcurl \
libcurl-devel libjpeg libjpeg-devel \
libpng libpng-devel freetype freetype-devel \
gmp gmp-devel libmcrypt libmcrypt-devel \
readline readline-devel libxslt libxslt-devel \
libicu-devel openldap openldap-devel \
make zlib zlib-devel gcc-c++ libtool \
pcre pcre-devel cmake gcc ncurses ncurses-devel \
bison bison-devel libgcrypt perl wget
阅读全文 »

去除文件空行和#开头的行

1
2
3
grep ^[^#] file
grep -Ev "^$|[#;]" file
egrep -v "^$|#" file
阅读全文 »