
Python
喵星人Xcode
初恋是C,深爱着OC与Swift,出轨过H5与JS和Java,却选择Python过一辈子...
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Python三目运算符(三元运算符)用法详解
我们从一个具体的例子切入本节内容。假设现在有两个数字,我们希望获得其中较大的一个,那么可以使用 if else 语句,例如:if a>b: max = a;else: max = b;但是Python提供了一种更加简洁的写法,如下所示:max = a if a>b else b这是一种类似于其它编程语言中三目运算符? :的写法。Python 是一种极简主义的编程语言,它没有引入? :这个新的运算符,而是使用已有的 if else 关键字来实现相同的功能。..原创 2022-02-05 03:13:05 · 19034 阅读 · 0 评论 -
Python md5、sha256、sha1、加密方法
需要使用 hashlib 这个库,python 自带的,可以直接用。要加密的数据需要先使用 encode() 进行编码。import hashlibdata = "你好" # 要进行加密的数据data_sha = hashlib.sha256(data.encode('utf-8')).hexdigest() print(data_sha)用 md5、sha1 的话只要把上面代码里的 sha256 替换一下就好了。...原创 2022-02-05 02:04:25 · 1290 阅读 · 0 评论 -
python两个列表获取交集,并集,差集
list1=[1,2,3,4,5,6]list2=[2,3,4]交集方法一:list3=[new for new in list1 if new in list2]方法二:list3=list(set(list1).intersection(set(list2)))并集list3=list(set(list1).union(set(list2)))差集list3=list(set(list2).difference(set(list1))) # list2中有而.原创 2021-11-12 09:00:37 · 960 阅读 · 0 评论 -
Python unicode 字符串 转 list
unicode 字符串 转listunicode2list = u'[100, 100, 100, 100, 100, 100]'1. 方法一list = eval(unicode2list)2. 方法二[int(value) for value in unicode2list.strip("[]").split(",")]原创 2021-06-22 10:25:45 · 1172 阅读 · 0 评论 -
Python time模块 时间戳转换
时间戳转换时间戳获取:import timetime.time()时间戳转时间字符串: 时间戳->时间数组->格式化时间字符串时间字符串转时间戳: 格式时间字符串->时间数组->时间数组时间戳转换时间字符串:time_stamp = time.time() #获取当前时间戳 time_array = time.localtime(time_stamp) #时间戳转时间数组 time_str = time.strftime("%Y-%m-%d %H:%M原创 2021-06-01 09:44:34 · 1244 阅读 · 0 评论 -
Python 当前时间是那一年第几周的周几
isocalendar() 函数 返回(XX年,一年中的第几周,这一天是周几)>>> from datetime import datetime>>> datetime.now().isocalendar() # 今年2021年;第17周; 周3; 今天2021年04月28日(2021, 17, 3)>>> datetime.now().isocalendar()[1] # 索引为[1],就可以求出一年的第多少周原创 2021-04-28 19:41:05 · 2562 阅读 · 0 评论 -
Python 日期和时间
获取当前时间戳#!/usr/bin/python# -*- coding: UTF-8 -*- import time; # 引入time模块 ticks = time.time()print "当前时间戳为:", ticks当前时间戳为: 1459994552.51获取当前时间#!/usr/bin/python# -*- coding: UTF-8 -...原创 2019-04-08 18:03:45 · 735 阅读 · 0 评论 -
Python unicode 和 str 相互转化
str: s = "你好"unicode: u = u"你好“unicode 转化为 str(encode 编码):str = u.encode('gbk')str = u.encode('utf-8')str转化为unicode (decode 解码):unicode = s.decode('gbk')unicode = s.decode('utf-8'...原创 2019-04-08 20:10:28 · 20213 阅读 · 3 评论 -
Python 算两个日期之间_天数差
算两个日期之间天数差import datetimedef days(str1,str2): date1=datetime.datetime.strptime(str1[0:10],"%Y-%m-%d") date2=datetime.datetime.strptime(str2[0:10],"%Y-%m-%d") num=(date1-date2).days...原创 2019-04-08 20:16:28 · 7822 阅读 · 0 评论 -
Python 算两个日期之间_月度差
算两个日期之间月度差import datetimedef months(str1,str2): year1=datetime.datetime.strptime(str1[0:10],"%Y-%m-%d").year year2=datetime.datetime.strptime(str2[0:10],"%Y-%m-%d").year month1=dateti...原创 2019-04-08 20:19:12 · 1376 阅读 · 0 评论 -
Python 日期的 加减 操作
获取当前时间# coding=utf-8import datetimenow=datetime.datetime.now()print now日期输出格式化所有日期、时间的api都在datetime模块内。datetime=>stringnow = datetime.datetime.now()now.strftime('%Y-%m-%d %H...原创 2019-04-08 20:30:07 · 425 阅读 · 0 评论 -
Python datetime 和 str 相互转化
datetime转化为strnow = datetime.datetime.now()now.strftime('%Y-%m-%d %H:%M:%S')print now# 输出2012-03-05 16:26:23.870105strftime是datetime类的实例方法。str转化为 datetimet_str = '2012-03-05 16:26:2...原创 2019-04-08 20:34:39 · 6283 阅读 · 0 评论 -
Ubuntu18.04 安装 Odoo10
安装Ubuntu 18.04,省略安装时,默认用户名为odoo ubuntu 16.04开始使用systemd管理服务,但是systemd兼容sysv init脚本下载odoo源码从http://nightly.odoo.com/10.0/nightly/src/odoo_10.0.latest.tar.gz 下载源码例如下载到/hom...原创 2019-04-17 18:04:42 · 1526 阅读 · 0 评论 -
Odoo 10 数据库备份及恢复总结
数据库备份的时候难免会出现一些小问题,本篇文章主要讲解一下odoo的PostgreSQL数据库的备份恢复以及操作:备份策略:阶段性备份+特定事件备份。周期性自动备份+手动检查+自动通知。官方参考:https://www.odoo.com/forum/help-1/question/how-to-setup-a-regular-postgresql-database-backup-4728非...原创 2018-11-15 19:34:06 · 6233 阅读 · 1 评论 -
Python 操作 Redis 详解
Redis 是什么?Redis 是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redi...原创 2018-08-06 14:55:40 · 2009 阅读 · 5 评论 -
Python中list的拷贝与Numpy的array的拷贝的区别
首先,先说一下list的赋值与list的切片有什么不同。list1 = [1,2,3,4,5,6]list2 = list1list3 = list1[:]list4 = list1[1:4]此时,list2 = list1 , 直接赋值,实质上指向的是同一个内存值。任意一个变量list1(或list2)发生改变,都会影响另一个list2(或list1)。而 list3原创 2018-01-12 03:06:17 · 541 阅读 · 0 评论 -
Mac 安装 Python pip包管理工具
pip是常用的python包管理工具,类似于java的maven。用python的同学,都离不开pip。 在新mac中想用home-brew安装pip时,遇到了一些小问题:bogon:~ Mac$ brew install pipError: No available formula with the name "pip"Homebrew provides pip via: `brew原创 2018-01-15 06:24:43 · 2821 阅读 · 1 评论 -
Python 的内存管理机制
从三个方面来说;一、对象的引用计数机制; 二、垃圾回收机制; 三、内存池机制一、对象的引用计数机制Python内部使用引用计数,来保持追踪内存中的对象,所有对象都有引用计数。引用计数增加的情况:1,一个对象分配一个新名称2,将其放入一个容器中(如列表、元组或字典)引用计数减少的情况:1,使用del语句对对象别名显示的销毁2,引用超出作用域或被重新赋值sys.getrefcount( )函数可以获得原创 2018-01-18 11:32:10 · 437 阅读 · 0 评论 -
Ubuntu 16.04 安装 python3.6 环境并设置为默认
1.添加python3.6安装包,并且安装sudo apt-get install software-properties-common2.下载python3.6sudo add-apt-repository ppa:jonathonf/python-3.6sudo apt-get updatesudo apt-get install python3.63.修改系统默认pyt原创 2018-02-02 04:12:28 · 18735 阅读 · 4 评论 -
对面向对象的理解
一句话解释什么是对象!所谓对象,就是抽象化的数据本身面向对象有三大特性:封装,继承,多态。对象与类的区别类是抽象的,不占用存储空间;而对象具体的,占用存储空间。面向对象的产生原因面向对象的编程产生的历史原因:由于面向过程编程在构造系统时,无法解决重用,维护,扩展的问题,而且逻辑过于复杂,代码晦涩难懂,因此,人们开始想能不能让计算机直接模拟现实的环境,以人类解决问题的方法,思路,习惯和步骤来设计相应原创 2018-01-13 02:35:19 · 486 阅读 · 0 评论 -
TCP/IP、Http、Socket的区别?
网络的七层模型网络由下往上分为 物理层、 数据链路层、 网络层、 传输层、 会话层、 表示层、 应用层。通过初步的了解,我知道IP协议对应于网络层,TCP协议对应于传输层,而HTTP协议对应于应用层, 三者从本质上来说没有可比性,socket则是对TCP/IP协议的封装和应用(程序员层面上)。也可以说,TPC/IP协议是传输层协议,主要解决数据如何在网络...原创 2018-03-03 03:41:20 · 445 阅读 · 0 评论 -
深入理解 - 进程与线程
进程与线程的概念进程考虑一个场景:浏览器,网易云音乐以及notepad++ 三个软件只能顺序执行是怎样一种场景呢?另外,假如有两个程序A和B,程序A在执行到一半的过程中,需要读取大量的数据输入(I/O操作),而此时CPU只能静静地等待任务A读取完数据才能继续执行,这样就白白浪费了CPU资源。你是不是已经想到在程序A读取数据的过程中,让程序B去执行,当程序A读取完数据之后,让程序B暂停。聪明,这当然...原创 2018-03-15 17:54:03 · 778 阅读 · 2 评论 -
PyCharm 中的 ___jb_bak___ 和 ___jb_old___ 文件的处理方法
PyCharm使用的时候会出现这样一些 *. py 的备份文件该文件具有类型: *.___jb_old___ 和 * .___jb_bak___在Notepad++中打开文件,并看到它们是对应*的相同备份文件 .py 文件为什么每个*都有两个相同的备份文件.py文件呢?你可以禁用“安全写入”什么是安全写入呢?"""使用“安全写入”(先将更改保存到临时文件中),如果选中此复选框,将首先将更改后的文...原创 2018-03-22 10:34:50 · 4485 阅读 · 3 评论 -
Django & Tornado 区别与界限
Django & Tornado 各自的优缺点Django优点:大和全(重量级框架)自带orm,template,view 需要的功能也可以去找第三方的app注重高效开发全自动化的管理后台(只需要使用起ORM,做简单的定义,就能自动生成数据库结构,全功能的管理后台)session功能缺点:template不怎么好用(来自自身的缺点)数据库用nosql不方便(来自自身的缺点)如果功能不多,容...原创 2018-03-09 02:55:03 · 4329 阅读 · 0 评论 -
Linux/Unix 后台执行./xxx.py文件,报错 syntax error near unexpected token ' xxxxxx'
python脚本中的#!/usr/bin/python估计有不少人注意过一些python脚本开头有这么行东东:#!/usr/bin/python它是用来干嘛的?貌似没有它对脚本功能也没啥影响。它是用来指定用什么解释器运行脚本以及解释器所在的位置。以hello.py为例,脚本内容如下:def test(): print 'hello, world'if __name__ == "__m...原创 2018-03-26 01:00:55 · 2317 阅读 · 0 评论 -
Windows 安装 Python 及配置环境变量
目前,Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的。由于2.x版官方只维护到2020年,所以以3.x版作为示例,但是2.x版与3.x版安装方法及环境变量配置的方法是一模一样的,所以请放心。下载 Python 安装包进入Python官网www.python.org,在“Downloads”下拉菜单中的右半部分直接点击python3.6.4版本即可下载,它会自动下载32...原创 2018-03-27 18:00:38 · 131464 阅读 · 4 评论 -
Windows 安装 pip
pip是一款非常方便的python包管理工具,本文主要介绍在windows 10下安装pip方法。1. 下载pip地址:https://pypi.python.org/pypi/pip#downloads注意选择tar.gz压缩包,目前最新版本为9.0.3,这里选择的版本是:pip-9.0.3.tar.gz (md5, pgp)2. 解压安装解压下载的压缩包至工作目录下(如D:\),打开Windo...原创 2018-03-28 11:22:16 · 25476 阅读 · 0 评论 -
odoo10 model层常用方法总结
create方法在数据表中插入一条记录(或新建一个对象的resource)格式:def create(self,cr,uid,vals,context={})参数:vals:待新建记录的字段值,是一个字典。context(optional):OpenERP几乎所有方法都带参数context,context是一个字典,存放一些上下文值返回值:新建记录的idsearch方法查询符合条件的记录格式:de...翻译 2018-05-18 17:56:18 · 2027 阅读 · 1 评论 -
Python 判断闰年
一、闰年的计算方法如果是世纪年,如1900,2000等可以被100整除的年份,只有可以被400整除的年份是闰年,其他年份是平年; 其他不是世纪年的年份可以被4整除的就是闰年,否则就是平年。二、使用python来实现计算# -*- coding: UTF-8 -*- year = int(input("输入一个年份: "))if (year % 4) == 0: if (y...原创 2018-07-20 18:33:00 · 26309 阅读 · 1 评论 -
Python中的list与NumPy中array的区别 及相互转换
Python中的list是python的内置数据类型,list中的数据类不必相同的。在list中的数据类型保存的是数据所存放的地址,简单的说就是指针,并非数据,这样保存一个list就太麻烦了,例如list1=[1,2,3,'a']需要4个指针和四个数据,增加了存储和消耗cpu。Numpy中的array所存放的数据类型必须全部相同。list1=[1,2,3,'原创 2018-01-12 02:27:40 · 36395 阅读 · 1 评论