python系列1_travel
Python__copy
- copy模块用于对象的拷贝操作。该模块只提供了两个主要的方法:copy.copy与copy.deepcopy,分别表示浅复制与深复制。
- 浅拷贝(copy):拷贝父对象,不会拷贝对象的内部的子对象。即浅复制只复制对象本身,没有复制该对象所引用的对象。
- 深拷贝(deepcopy): copy 模块的 deepcopy 方法,完全拷贝了父对象及其子对象。即创建一个新的组合对象,同时递归地拷贝所有子对象,新的组合对象与原对象没有任何关联。虽然实际上会共享不可变的子对象,但不影响它们的相互独立性。
Python__random
在Python中的库可以分为三种:标准库(也可以叫做内置库),第三方库,自定义库。接下来将记录一下几个常用的标准库的用法:
- random()——返回随机生成的一个实数,它在[0.1)范围内
import random
print(random.random()) # 随机生成一个0-1的随机数
- uniform(a,b) —— 随机生成a-b之间随机浮点数
import random
print(random.uniform(1,2)) # 随机生成一个1-2的随机浮点数
- randint(a,b)——生成a-b的随机整数,包括a, b
import random
print(random.randint(1,3)) # 随机生成1,2,3的随机数
- randrange——在某个范围生成一个随机数
import random
print(random.randrange(10)) # 随机生成0-10的随机数,不包括10
print(random.randrange(1,10)) # 随机生成1-10的随机数,不包括10
print(random.randrange(1,10,2)) # 随机生成1-10的随机数,不包括10,步数为2,即可能产生的随机数为:1,3,5,7,9
- choice——在可迭代对象中随机取一个元素
import random
print(random.choice("abc")) # 在字符串abc中随机取一个元素
print(random.choice([1,2,3])) # 在列表[1,2,3]中随机取一个元素
- sample(a,n)——在可迭代对象a中随机取n个元素,组成一个列表
import random
print(random.sample("abcdefg",3)) # 在字符串abcdefg,随机取三个元素组成一个列表
print(random.sample([1,2,3,4,5,6],3)) # 在列表[1,2,3,4,5,6]中随机取三个元素组成一个
Python__utf-8
- 为什么在python中需要使用“utf-8”进行转码呢?
因为:在python内部是用unicode的,由于windows的命令行输入的是GBK编码,可以要先转为unicode,要转url encode时,先把str转为utf-8。
Python__str()
- str() 函数将对象转化为适于人阅读的形式。
- 字符串长度获取:len(str)
- 全部大写:str.upper()
- 全部小写:str.lower()
- 大小写互换:str.swapcase()
- 首字母大写,其余小写:str.capitalize()
- 首字母大写:str.title()
Python__枚举Enum
例子:
from enum import Enum
Month = Enum('Month', ('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec')) @unique
class Weekday(Enum):
Sun = 0 # Sun的value被设定为0
Mon = 1
Tue = 2
Wed = 3
Thu = 4
Fri = 5
Sat = 6 for name, member in Month.__members__.items():
print(name, '=>', member, ',', member.value)
我们就获得了Month类型的枚举类,可以直接使用Month.Jan来引用一个常量,或者枚举它的所有成员。
Python__@
'@' 用做函数的修饰符,可以在模块或者类的定义层内对函数进行修饰。出现在函数定义的前一行,不允许和函数定义在同一行。一个修饰符就是一个函数,它将被修饰的函数作为参数,并返回修饰后的同名函数或其他可调用的东西。
示例:
def square_sum(fn):
def square(*args):
print("1---", args)
n = args[0]
print("2==", n*(n-1)*(2*n-1)/6)
print(fn.__name__)
fn(n*(n-1)*(2*n-1)/6)
print("*"*15)
return fn(n*(n-1)*(2*n-1)/6)
return square
@square_sum
def sum_a(a):
print("3=", a) sum_a(10)
结果
1--- (10,)
2== 285
sum_a
3= 285
***************
3= 285
可以看出,他是先执行修饰器函数,然后有return fn的时候,修饰器下的函数才是生效的,否则函数sum_a 是没有结果的。
python系列1_travel的更多相关文章
- 总结整理 -- python系列
python系列 python--基础学习(一)开发环境搭建,体验HelloWorld python--基础学习(二)判断 .循环.定义函数.继承.调用 python--基础学习(三)字符串单引号.双 ...
- 初探接口测试框架--python系列7
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- 初探接口测试框架--python系列2
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- 初探接口测试框架--python系列3
点击标题下「微信」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是我们期 ...
- 初探接口测试框架--python系列4
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- 初探接口测试框架--python系列5
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- 初探接口测试框架--python系列6
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- 【推荐分享】Python电子书,视频教程(Let's Python系列视频教程等)(百度网盘)
资源都放在百度网盘里了. Python视频教程(Python Django视频教程全集—台湾辅仁大学):http://pan.baidu.com/s/1dDgiWIt Python视频教程(let's ...
- Python系列之入门篇——HDFS
Python系列之入门篇--HDFS 简介 HDFS (Hadoop Distributed File System) Hadoop分布式文件系统,具有高容错性,适合部署在廉价的机器上.Python ...
随机推荐
- cds.data:=dsp.data赋值有时会出现AV错误剖析
cds.data:=dsp.data赋值有时会出现AV错误剖析 如果QUERY没有查询到任何数据,cds.data:=dsp.data赋值会触发AV错误. 大家知道,DATASNAP有许多远程方法就是 ...
- [转]linux下tar.gz、tar、bz2、zip等解压缩、压缩命令小结
原文:http://www.jb51.net/LINUXjishu/43356.html ------------------------------------------------------- ...
- Linux 的 Socket IO 模型
前言 之前有看到用很幽默的方式讲解Windows的socket IO模型,借用这个故事,讲解下linux的socket IO模型: 老陈有一个在外地工作的女儿,不能经常回来,老陈和她通过信件联系. 他 ...
- libevent HTTP client 的实现
my_conn_ = evhttp_connection_base_new(ev_base_,ev_dns_,host,port); struct evhttp_request *http_req; ...
- Spark应用远程调试
本来想用Eclipse的.然而在网上找了一圈,发现大家都在说IntelliJ怎样怎样好.我也受到了鼓励,遂决定在这台破机器上鼓捣一次IntelliJ吧. Spark程序远程调试,就是将本地IDE连接到 ...
- var和dynamic的应用 var、动态类型 dynamic 深入浅析C#中的var和dynamic ----demo
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- 安装PyQt5和Eric6
安装官方的指引,安装起来本来是非常简单的,但是我前后折腾了两天,甚至连Eric得源码都去调试都没成功.过程如下: 在PyQt5的官网链接中下载轮子 PyQt5-5.7.1-5.7.1-cp34.cp3 ...
- 我的家乡:三河古镇已经登上央视CCTV-1新闻联播啦!
在烟雨朦胧时走在古镇的青石街上,别有一番风味!第一幅图为央视的直播车,第二副图为漂亮的三河夜景色!
- HLJU 1220: AC100天 (枚举)
1220: AC100天 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 89 Solved: 12 [id=1220">Submit ...
- WebService(2)-XML系列之用Stax操作Xml
源代码下载:链接: http://pan.baidu.com/s/1ntL1a7R password: rwp1 本文主要讲述:利用Stax处理xml文档 一.读取xml 1.基于光标的查找 核心:X ...