190525-Python之命令行参数解析getopt使用说明

请求参数解析属于比较常见和基础的操作技能了,如果希望我们的脚本可以在启动时,传入一些参数,来实现不同的环境指定,条件判断等,可以怎么处理呢?

本篇将介绍在python中,如何优雅的使用getopt,来解析我们的命令行参数

190524-Python之pip导出与安装项目依赖包

使用pip进行python的包管理,记录下常见的两个,安装与导出项目依赖包

1
2
3
4
5
6
7
8
# 安装依赖
pip install pymysql

# 导出依赖
pip freeze 1> requirements.txt

# 安装项目所有依赖
pip install -r requirements.txt

190523-Python之json无法序列化部分类型数据问题解决方案

直接使用python的json库,实现对象和json串的互转,一般使用姿势也很简单,然而今天在使用的时候,需要序列化的对象中有datetime类型的对象,结果就抛出了异常TypeError: Object of type datetime is not JSON serializable

1
2
3
4
5
6
7
import json
result = {"hello": "你好", "name": "一灰灰blog"}
str_json = json.dumps(result)
print(str_json)

j_res = json.loads(str_json)
print(j_res)

190429-Python之获取本机ip地址

环境区分,一种常见的case就是根据ip地址段进行界定,通过给开发环境,测试环境和生成环境映射到不同的ip地址段机器,因此也就有了获取ip地址的需求

190424-Python之16进制与10进制转换

最近正好用到了16进制和十进制之间的互转,发现python相比于java而言,有更优雅的实现方式,下面记录一二

16进制转10进制

1
2
s = '0x12da'
ans = int(s, 16)

10进制转16进制

1
ans = hex(120)

190325 Python 集合常用方法

简单介绍一下集合的一些常用方法

  • len: 个数
  • in: 判断是否存在
  • max: 最大值
  • min: 最小值

190325 Python 集合

集合,最大的特点就是无序、无重复,本文将简单介绍一下集合的基本使用姿势

190323 Python 字典创建方式扩展篇

dict内置方法中,有一个fromkeys,可以用于创建新的字典,以seq序列中的元素作为键,value作为所有键的初始化值

1
dict.fromkeys(seq[,value])

190323 Python 字典迭代

字典的迭代,常见的有key,value,items三种迭代方式,下面分别予以实例说明

190323 Python 字典内置方法

Python字典提供了一些内置的方法,可以减少大量的操作

  • clear: 清空
  • copy: 拷贝
  • update: 更新
  • setdefault: 不存在时,设置默认值
  • pop: 删除

190323 Python 字典常用函数

python字典中提供了以下几个常用的内置函数,本文分别予以介绍

  • len: 长度
  • str: 转字符串
  • type: 判断类型
  • in: 判断是否包含

190323 Python 字典注意事项

字典中的每一对元素由kv两个组成,那么这个key有没有什么限定呢?

比如能不能塞一个None作为key?能不能塞一个list作为可以?

190323 Python 字典

字典和我们熟悉的map差不多,属于python原生支持的数据结构,本文介绍一下基本使用case

190322 Python 元组截取

元组虽然不支持修改,但是它和list一样,是支持截取操作的,通过[s:e]语法

1
2
3
4
5
>>> a = (1,2,3,4,5,6)
>>> a[1:2]
(2,)
>>> a[2:-1]
(3, 4, 5)

190322 Python 元组运算符

元组也支持+*,和list其实差别不大,除了不能修改、删除

190322 Python 元组

元组与列表的最大区别是它是固定的,不能修改;本文介绍元组的基本知识点

190321 Python 列表复制

列表的拷贝,介绍两种常见的方式, copy()[:]

1
2
3
>>> l = [1,2,3]
>>> a = l.copy()
>>> b = l[:]

190321 Python 列表排序

在上一篇介绍list的内置方法中,并没有把排序丢进去,这里单独进行说明,本身的用法并不复杂,只不过需要注意一下,列表中的元素类型可以不一样,所以排序是否能适用,需要多多考虑

190321 Python 列表内置方法

List内置了一些方法,可以极大的减少我们的工作量,比如查找元素,删除指定元素,追加等,接下来逐一介绍

190321 Python 列表常用函数

接下来介绍几个使用的函数,可以方便的统计列表中的一些信息

  • len
  • max
  • min
  • list

190321 Python 列表截取与拼接

前面一篇介绍了两个列表相加,可以得到一个大的列表,那么还有其他的方式实现列表拼接么? 其次列表的拆分又可以怎么做呢?

190321 Python 列表脚本操作符

前面一篇介绍了list的基础操作知识,接下来介绍一些有意思的东西,list还可以进行各种运算

190321 Python 列表

list作为python原生支持的数据结构,本文简单介绍它的一些基本知识

190320 Python 数学常量

两个常见的数学常量圆周率π和自然常数e

1
2
3
import math
math.e
math.pi

190320 Python 随机函数

随机数用的比较多了,除了我们常见的random之外,python还提供了一些其他的函数, 本文将分别进行介绍

190320 Python 常见数学计算

本文将简单介绍一下一些基础的数学函数

  • abs
  • fabs
  • ceil
  • floor
  • round
  • pow
  • exp
  • log

190320 Python 数字类型转换

通过内置的函数int() float()可以很简单的将变量转换为整形或浮点型(注意python不支持像java一样的强制类型转换)

1
2
3
4
s = '123'
int(s)

float(s)

我们知道python一个非常经典的用处就是科学计算,它是原生支持复数的哦,我们可以借助complex实现

1
2
# 实数为10,虚数为2
complex(10, 2)

190319-Python之URL解析姿势

记录下python3+中,如何解析url,获取想要的信息过程, 首先看下url的构造,基本结构如下

IMAGE

我们主要借助的是 urlparse 来实现参数解析

190318-Python之异常堆栈信息打印

使用python的logging模块进行日志打印,发现堆栈信息总会被吃掉,导致分析问题缺少必要的上下文,搜索一番才发现,原来是使用姿势不对

190211-Python之时间和日期使用小结

对于日期的操作可以说是比较常见的case了,日期与格式化字符串互转,日期与时间戳互转,日期的加减操作等,下面主要介绍下常见的需求场景如何实现

190122-python计算md5的几种方式

计算String/文件的md5属于比较常见的需求;特别是web项目,为了验证客户端上传的东西,通过校验md5来判断参数是否串改,属于常见的手段,下面简单记录下python可以如何计算md5

190114-beautifulsoup4版本不一致导致解析问题

beautifulsoup4 这个用于解析html的包,不同版本的使用姿势问题,导致解析数据异常

190105-Python 搭建私服教程

在python项目中,需要引入第三方的包,可以通过pip很简单的引入;但是有个问题,公司内部的包,也不能发布到pypi仓库吧,所以搭建自己的私服就很有必要了,下面介绍一下基于PypiServer搭建私服的教程

181120-Python之Mysql异步使用篇aiomysql使用小结

db的读写操作可以算是io型,对于简单的sql,获取数据的数据可能远小于传输的时间,针对这种操作,异步的访问方式就比较占优势了。本篇主要介绍在python中如何借助aiomysql来实现db的异步读写

181118-Python之Mysql基本使用篇

I. 基本使用篇

这里主要使用mysql的基本使用姿势,也就是最常见的增删改查,这里主要是使用pymysql这个包来操作

181117-Python异步之asyncio

本篇主要是asyncio这个包的使用,如何使用协程,以及协程和线程可以怎么配合使用,得到更加的使用效果

181117-Python线程与协程

本篇博文主要介绍python中线程与协程的简单使用姿势

181116-Python函数特性

本篇博文主要介绍一些高级的函数特性,如map,reduce,filter,sort,装饰器,lambda等

181114-Python高级特性

python的一些高级特性记录小结,主要就是列表生成是和生成器的使用姿势

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×