Python数据类型方法整理
一、Python的关键要素
1.1 要素1:数据类型
二、数据类型
2.1 标识符与关键字
- 由字符(A~Z 和 a~z)、下划线和数字组成,但不能以数字开头;
- 不能以python中的关键字命名;
- 2.1. 不能与Python关键字同名
- 2.2 不能与Python内置数据类型(如int/float/list/str/tuple)同名
- 2.3. 不能与Python内置函数名与异常名作为标识符名
- Python中的标识符中,不能包含空格、@、% 以及 $ 等特殊字符。
- Python 中,标识符中的字母是严格区分大小写的,相同单词大小格式不同代表意义不同,如:
- number = 0
- Number = 0
- NUMBER = 0
- 变量名命名要有意义,最好见名知意,提高代码可读性
- 推荐使用大小驼峰型(GuessAge或guessAge)和下划线(guess_age)来命名;
- 常量通常使用大写来定义
- Python 语言中,以下划线开头的标识符有特殊含义,例如:
- 以单下划线开头的标识符(如 _width),表示不能直接访问的类属性,其无法通过 from...import* 的方式导入;
- 以双下划线开头的标识符(如__add)表示类的私有成员;
- 以双下划线作为开头和结尾的标识符(如 __init__),是专用标识符。
2.2 Integral类型
2.2.1 整数
- 图:数值型操作与函数
2.3 字符串
2.3.1字符串转义
2.3.2 字符串运算符
td {white-space:pre-wrap;}
-->
%c | 格式化字符及其ASCII码 |
%s | 格式化字符串 |
%d | 格式化整数 |
%u | 格式化无符号整型 |
%o | 格式化无符号八进制数 |
%x | 格式化无符号十六进制数 |
%X | 格式化无符号十六进制数(大写) |
%f | 格式化浮点数字,可指定小数点后的精度 |
%e | 用科学计数法格式化浮点数 |
%E | 作用同%e,用科学计数法格式化浮点数 |
%g | %f和%e的简写 |
%G | %f 和 %E 的简写 |
%p | 用十六进制数格式化变量的地址 |
2.3.4 字符串操作方法
- seq = "abcdefg"
- [:] 提取从开头(默认位置0)到结尾(默认位置-1)的整个字符串
- seq[start]
如: seq[1],取第二个字符“b”
3. [start:] 从start 提取到结尾
如: seq[1:3] 包含上边界不包含下边界,因此取值为"bc"
如: seq[1:] 取值从第二个字符至结尾:"bcdefg"
6. seq[start:end:step] 如seq[1:4:2]步长值为2,因此取值"bd"
7. 负索引:-1表示最后一个字符
2.4 元组
2.4.1 元组的内置方法
td {white-space:pre-wrap;}
-->
2.4.2 访问元组
- #!/usr/bin/python3
- tup1 = ('Google', 'Runoob', 1997, 2000)
- print (tup1[0])
- print (tup2[1:5])
2.4.3 修改元组
- tup1 = (12, 34.56)
- tup2 = ('abc', 'xyz')
- # 以下修改元组元素操作是非法的。# tup1[0] = 100
- #创建一个新的元组,可进行元组合并
- tup3 = tup1 + tup2
- print (tup3)
2.4.4 删除元组
- tup = ('Google', 'Runoob', 1997, 2000)
- del tup
2.4.5 元组运算符
td {white-space:pre-wrap;}
-->
Python 表达式 | 结果 | 描述 |
len((1, 2, 3)) | 3 | 计算元素个数 |
(1, 2, 3) + (4, 5, 6) | (1, 2, 3, 4, 5, 6) | 连接 |
('Hi!',) * 4 | ('Hi!', 'Hi!', 'Hi!', 'Hi!') | 复制 |
3 in (1, 2, 3) | TRUE | 元素是否存在 |
for x in (1, 2, 3): print (x,) | 1 2 3 | 迭代 |
2.5 列表
2.5.1 列表方法
2.5.2 列表内涵
[expression for item in iterable if condition]
- temp=[]
- for item in iterable:
- if condition:
- temp.append(item)
- leaps=[]
- for year in range(1900,1940):
- if(year%4==0 and year%100!=0)or (year%400==0)
- leaps.append(year)
- leaps=[y for y in range(1900,1940) if(y%4==0 and y%400!=0) or(y%400=0)]
- print(sum([i for i in range(1,51)]))
- print(sum(range(1, 51)))
- s = [(x, y, x*y) for x in range(1, 10) for y in range(1,10) if x>=y]
2.6 集合
td {white-space:pre-wrap;}
-->
语法 | 描述 |
s.add(x) | 将数据项x添加到集合s中(如果s中未包含x) |
s.clear() | 清楚集合s中的所有数据项 |
s.pop() | 返回并移除已集合s中一个随机项,如果s为空集,就会产生KeyError |
s.remove(x) | 从集合s中移除数据项x,如果s中不包含x,就会产生KeyError |
s.discard(x) | 如果数据项x存在于集合s中,就移除该数据项,参见set.remove() |
s.copy() | 返回集合元素的浅拷贝 |
s.difference(t) s-t | 返回一个新集合,其中包含在s中但不在集合t中的所有数据项 |
s.difference_update(t) s-=t | 移除每一个在集合t但不在集合s中的项 |
s.union(t) s|t | 返回新集合,包含s中所有数据项以及在t中不在s中的数据项 |
s.update(t) s|=t | 将集合t中每个s中不包含的数据项添加到集合s中 |
2.6.2 集合内涵
- {expression for item in iterable if condition}
- 我们可以使用上面语法过滤,下面给出一个实例:
- Html = {x for x in files if x.lower().endswith(('.htm','.html'))} 意思是集合html只存放那些以.htm或.html结尾的文件名这里不区分大小写
2.7 映射类型
- 2.字典的键是不能重复的,独一无二
- 3.字典是无序的,不能通过索引取切店
td {white-space:pre-wrap;}
-->
语法 | 描述 |
d.clear() | 从dict d中移除所有项 |
d.copy() | 返回dict d的浅拷贝 |
d.fromkeys(s,v) | 返回一个dict,字典的键为序列s中的所有项,值为None或v |
d.get(k) | 返回k对应的value,如果k不在字典中返回None |
d.get(k,v) | 返回k对应的value,如果k不在字典中就返回v |
d.items() | 返回dict中所有key,value项 |
d.keys() | 返回dict中的所有key |
d.values() | 返回dict中的所有value |
d.pop(k) | 返回k对应的value,并移除k的项,如果k不存在就产生KeyError |
d.pop(k,v) | 返回k对应的value,并移除k的项,如果k不存在就返回v |
d.popitem() | 返回并移除dict中一个任意的key,value对,如果d为空就产生KeyError |
d.setdefault(k,v) | 与d.get()方法一样,不同处如果k没有包含在dict d中就插入一个键为k的新项,其值为None或v,可用于赋值 |
d.update(a) | 将a中不包含在b的(key,value)添加到d,如包含则替换 |
- os.listdir()返回传递给函数的路径中包含的文件与目录列表但列表中不会包含"."或".."
- os.path.getsize()函数返回给定文件的大小(以字节计数)
- file_sizes = {name:os.path.getseize(name) for name in os.listdir(".")}
- file_sizes = {name:os.path.getseize(name) for name in os.listdir(".")
- if os.path.isfile(name)}
- inverted_d = {v:k for k,v in d.items()}
td {white-space:pre-wrap;}
-->
td {white-space:pre-wrap;}
-->
td {white-space:pre-wrap;}
-->
td {white-space:pre-wrap;}
-->
td {white-space:pre-wrap;}
-->
Python数据类型方法整理的更多相关文章
- python数据类型知识整理
python数据类型种类 int数字.bool布尔值.dict字典.tunple元组.set集合.list列表.字符串 int数字 #常用来进制转换 num = 11 #转化成2进制 bin_num ...
- python 字符串方法整理
Python字符串方法 1.大小写转换 1.1 lower.upper lower():小写 upper():大写 1.2 title.capitalize S.title():字符串中所有单词首字母 ...
- Python数据类型方法精心整理,不必死记硬背,看看源码一切都有了
Python认为一切皆为对象:比如我们初始化一个list时: li = list('abc') 实际上是实例化了内置模块builtins(python2中为__builtin__模块)中的list类: ...
- Python数据类型方法
Python认为一切皆为对象:比如我们初始化一个list时: li = list('abc') 实际上是实例化了内置模块builtins(python2中为__builtin__模块)中的list类: ...
- Python集合方法整理(Day9)
#作用:去重,关系运算, #定义: 知识点回顾 可变类型是不可hash类型 不可变类型是可hash类型 #定义集合: 集合:可以包含多个元素,用逗号分割, 集合的元素遵循三个原则: 1:每个元素必须是 ...
- Python数据类型及其方法详解
Python数据类型及其方法详解 我们在学习编程语言的时候,都会遇到数据类型,这种看着很基础也不显眼的东西,却是很重要,本文介绍了python的数据类型,并就每种数据类型的方法作出了详细的描述,可供知 ...
- Python 数据类型常用的内置方法(三)
目录 Python 数据类型常用的内置方法(三) 1.列表内置方法 1.sort():升序 2.reverse():颠倒顺序 3.列表比较运算 2.字典内置方法 1.对Key的操作 2.len( )- ...
- Python 数据类型常用的内置方法(二)
目录 Python 数据类型常用的内置方法(二) 1.字符串类型常用内置方法 1.upper.lower.isupper.islower 2.startswith.endswith 3.format ...
- Python 数据类型常用的内置方法(一)
目录 Python 数据类型常用的内置方法 1.整型 int 2.浮点型 float 字符串转浮点型: 3.字符串 str 多种类型转字符型: 索引 切片 len( )方法:统计字符串长度/个数 移除 ...
随机推荐
- C#LeetCode刷题之#34-在排序数组中查找元素的第一个和最后一个位置(Find First and Last Position of Element in Sorted Array)
问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/4970 访问. 给定一个按照升序排列的整数数组 nums,和一个目 ...
- .NET或.NET Core Web APi基于tus协议实现断点续传
前言 前两天我采用技巧式方案基本实现大文件分片上传,这里只是重点在于个人思路和亲身实践,若在实际生产环境要求比较高的话肯定不行,仍存在一些问题需要深入处理,本文继续在之前基础上给出基于tus协议的轮子 ...
- doT模板双重循环模板渲染方法
doT模板作为一个前端渲染模板,有着非常显著的有点.1.轻量.2.快捷.3.无依赖. 本文介绍一种几乎所有模板都会遇到的问题,双重循环渲染.我们知道在dot模板中循环渲染用的是{{~ it:value ...
- Python | 浅谈并发锁与死锁问题
本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是Python专题的第24篇文章,我们一起来聊聊多线程场景当中不可或缺的另外一个部分--锁. 如果你学过操作系统,那么对于锁应该不陌生. ...
- 树莓派搭建网站wordpress的url写错 问题解决方法 有效GUI方法
这个时候wordpress的后台已经登陆不了了,所以要对数据库做一些改变. 先说一下我是跟b站韩博士学的,LNMP.如果我们用的不一个方法的话下面就不用看了.下面是具体方法: 1 浏览器登录phpm ...
- C#分布式登录——jwt
一.传统的session登录 在服务器存储一份用户登录的信息,这份登录信息会在响应时传递给浏览器,告诉其保存为cookie,以便下次请求时发送给我们的应用,这样我们的应用就能识别请求来自哪个用户了,这 ...
- js替换指定位置字符串
var str='QWER';//替换WE newstr=replacepos(str,1,2,'XX'); console.log(newstr);//QXXR; function replacep ...
- 封装Vue Element的form表单组件
前两天封装了一个基于vue和Element的table表格组件,阅读的人还是很多的,看来大家都是很认同组件化.高复用这种开发模式的,毕竟开发效率高,代码优雅,逼格高嘛.虽然这两天我的心情很糟糕,就像& ...
- 如何运用excel或spss等软件统计大量纸质问卷?
在用纸质问卷进行数据收集时,总是避不开一个问题,就是如何把数据快速准确的进行统计分析.这里提供一个方法,包括以下几个步骤: 一.录入数据 二.上传数据 三.分析数据 一.录入数据 首先把纸质问卷 ...
- Elementor如何隐藏页面上的标题(2种办法)
原文首发于:https://loyseo.com/how-to-hide-page-title-in-elementor/ 本文介绍两种隐藏Elementor页面默认标题的方法,一种是单个隐藏,一种是 ...