数据类型及常用方法

一、字符串

1.说明

  (1)字符串需加引号;

name = "我是Allen"
name = 'Allen'
name = """Allen"""
name = '''我是Allen'''

字符串示例

  (2)字符串创建后不可修改,修改字符串相当于在内存中另外生成一个数据,使用该变量名;

>>>a = "allen"
>>>id(a)
>>>54933968
>>>a = "tsui"
>>>id(a)
>>>55058136

字符串修改示例

  (3)字符串可被迭代;

a = "allen"
for i in a:print(i)输出:
a
l
l
e
n

字符串迭代示例

  (4)字符串索引、切片,从左到右从0开始编号,-1表示最后一个元素;

a = "allen"
print(a[0], a[3])
print(a[2:-1])
# 注意,索引是左闭区间,右开区间,所以不包含最后一个元素

输出:
a e
le

字符串索引切片示例

2.方法

  (1)capitalize():首字母大写

name = "allen"
v = name.capitalize()
print(v)输出:
Allen

capitalize()示例

  (2)upper():全部变成大写

name = "allen"
v = name.upper()
print(v)输出:
ALLEN

upper()示例

  (3)lower():全部变成小写

name = "aLLen"
v = name.lower()
print(v)输出:
allen

lower()示例

  (4)center():设置宽度,并将内容居中

name = "allen"
v1 = name.center(20)
# 设置总长度为20,并将allen居中
v2 = name.center(20, "=")
# 设置总长度为20,并将allen居中,其余使用=填充
print(v1)
print(v2)输出:allen
=======allen========

center()示例

  (5)count():字符串中寻找子序列的出现次数

name = "allenleeneeeddgendg"
v = name.count("en")
# 寻找en出现的次数
print(v)v = name.count("en",7,9)
# 从字符串索引7到索引9(不包括9)之间寻找en出现的次数
print(v)输出:
3
1

count()示例

  (6)endswith():是否以···结尾

name = "allenleeneeeddgendg"
v = name.endswith("d")
print(v)v = name.endswith("dg")
print(v)输出:
False
True

endswith()示例

  (7)startswith():是否以···开头

name = "allenleeneeeddgendg"
v = name.startswith("a")
print(v)v = name.startswith("ad")
print(v)输出:
True
False

startswith()示例

  (8)find():从开始往后找,找到第一个子字符串后获取所在的位置,未找到显示-1

name = "allenallen"
v = name.find("en")
print(v)v = name.find("en", 6, 10)
# 从index6开始到index10位置结局寻找
print(v)输出:
3
8

find()示例

  (9)index():查找子字符串后获取所在的位置,找不到报错

name = "allen"
v = name.index("en")
print(v)输出:
3

index()示例

  (10)format() / format_map():格式化,将一个字符串中的占位符替换为指定的值

test = 'i am {name}, age {a}'
print(test)
v = test.format(name='allen',a=19)
print(v)输出:
i am {name}, age {a}
i am allen, age 19test = 'i am {0}, age {1}'
print(test)
v = test.format('allen', 19)
print(v)输出:
i am {0}, age {1}
i am allen, age 19test = 'i am {name}, age {a}'
print(test)
v1 = test.format(name='allen',a=10)
v2 = test.format_map({"name": 'allen', "a": 19})
print(v1)
print(v2)输出:
i am {name}, age {a}
i am allen, age 10
i am allen, age 19

format()示例

  (11)isalnum():字符串中是否只包含字母和数字

a = "123"
v1 = a.isalnum()
b = "ddd123"
v2 = b.isalnum()
c = "ddd"
v3 = c.isalnum()
d = "$ddd"
v4 = d.isalnum()
print(v1, v2, v3, v4)输出:
True True True False

isalnum()示例

  (12)title():把所有单词第一个字母设置为大写

a = "i am allen"
v = a.title()
print(v)输出:
I Am Allen

title()示例

  (13)isalpha():是否是字母

a = "12dd"
v = a.isalpha()
print(v)a = "dd"
v = a.isalpha()
print(v)输出:
False
True

isalpha()示例

  (14)isdecimal() / isdigit() / isnumeric():是否是数字

a = "二"
v1 = a.isdecimal()
v2 = a.isdigit()
v3 = a.isnumeric()
print(v1, v2, v3)输出:
False False Truea = "1"
v1 = a.isdecimal()
v2 = a.isdigit()
v3 = a.isnumeric()
print(v1, v2, v3)输出:
True True Truea = "②"
v1 = a.isdecimal()
v2 = a.isdigit()
v3 = a.isnumeric()
print(v1, v2, v3)输出:
False True True

isdecimal()/isdigit()/isnumeric()示例

  (15)isprintable():是否存在不可显示的字符

a = "allen\ttsui"
存在\t、\n等转义字符
v = a.isprintable()
print(v)输出:
False

isprintable()示例

  (16)isspace():判断是否全部是空格

a = "     "
v = a.isspace()
print(v)输出:
True

isspace()示例

  (17)istitle():判断是否是标题

a = "i am allen"
v = a.istitle()
print(v)a = "I Am Allen"
v = a.istitle()
print(v)输出:
False
True

istitle()示例

  (18)join():将字符串中的每一个元素按照指定分隔符进行拼接

a = "i am allen"
v = "$".join(a)
# 用$拼接每个元素
print(v)输出:
i$ $a$m$ $a$l$l$e$n

join()示例

  (19)islower() / isupper():判断是否全部是大/小写

  (20)strip() / lstrip() / rstrip():移除指定字符串

a = "allen"
v1 = a.lstrip('a')
# 从左边移除
v2 = a.rstrip('en')
# 从右边移除
v3 = a.strip("allen")
print(v1)
print(v2)
print(v3)a = " allen "
v1 = a.lstrip()
# 不给参数表示从左边移除空格
v2 = a.rstrip()
# 不给参数表示从右边移除空格
v3 = a.strip()
print(v1)
print(v2)
print(v3)输出:
llen
allallen allen
allen

strip() / lstrip() / rstrip()示例

  (21)maketrans():对应关系替换

v = "allentsui"
m = str.maketrans("ati", "123")
new_v = v.translate(m)
print(new_v)输出:
1llen2su3

maketrans()示例

  (22)partition() /  rpartition():分割为三部分

a = "allentsuei"
v = a.partition("e")
# 从左边查找对应分割字符
print(v)输出:
('all', 'e', 'ntsuei')a = "allentsuei"
v = a.rpartition("e")
# 从右边查找对应分割字符
print(v)输出:
('allentsu', 'e', 'i')

partition() / rpartition()示例

  (23)split() / rsplit():分割为指定个数

a = "allentesuei"
v = a.split("e")
# 找出全部符合字符进行分割
print(v)a = "allentesuei"
v = a.split("e", 2)
# 找出指定数量符合字符进行分割
print(v)a = "allentesuei"
v = a.rsplit("e", 2)
# 从右边开始找出指定数量符合字符进行分割
print(v)输出:
['all', 'nt', 'su', 'i']
['all', 'nt', 'suei']
['allent', 'su', 'i']

split() / rsplit()示例

  (24)splitlines():根据换行符分割,true/false表示是否保留换行

test = "asdfadfasdf\nasdfasdf\nadfasdf"
v = test.splitlines(False)
print(v)test = "asdfadfasdf\nasdfasdf\nadfasdf"
v = test.splitlines(True)
print(v)输出:
['asdfadfasdf', 'asdfasdf', 'adfasdf']
['asdfadfasdf\n', 'asdfasdf\n', 'adfasdf']

splitlines()示例

  (25)swapcase():大小写转换

a = "Allen"
v = a.swapcase()
print(v)输出:
aLLEN

swapcase()示例

  (26)replace():将指定字符串替换为指定字符串

a = "allenallenallen"
v = a.replace("en", "us")
print(v)a = "allenallenallen"
v = a.replace("en", "us", 2)
# 指定转换次数
print(v)输出:
allusallusallus
allusallusallen

replace()示例

  (27)len():获取字符串长度

a = "allen"
print(len(a))输出:
5

len()示例

二、数字

1.说明

  (1)无需引号;

age = 13

数字示例

2.方法

  (1)int():将字符串转换为数字

a = "123"
print(type(a),a)b = int(a)
print(type(b),b)输出:
<class 'str'> 123
<class 'int'> 123

int()示例1

num = "0011"
v1 = int(num)
v = int(num, base=2)
# int()默认是十进制转换,可通过base=指定进制
print(v1, v)输出:
11 3

int()示例2

  (2)bit_length():当前数字的二进制占位长度

num = 11
v = num.bit_length()
print(v)输出:
4

bit_length()示例

三、列表

1.说明

  (1)使用中括号[]括起来;

  (2)使用索引引用元素,下标从0开始;

a = [1, 22, "ww", "allen"]
print(a[0], a[2])输出:
1 ww

列表示例

  (3)元素可为任何类似数据,字符串、数字、列表、元组、字典···;

  (4)有序,元素可被修改;

a = [1, 22, "ww", "allen"]
print(id(a))a[1] = 11
print(a)
print(id(a))输出:
47484616
[1, 11, 'ww', 'allen']
47484616

列表修改示例

  (5)元素删除方法:1、del 元素;2、pop();3、remove();4、clear() 

2.方法

  (1)append():原来值最后追加

a = [1, 22, "ww", "allen"]
a.append("tsui")
print(a)输出:
[1, 22, 'ww', 'allen', 'tsui']

append()示例

  (2)clear():清空列表

a = [1, 22, "ww", "allen"]
a.clear()
print(a)输出:
[]

clear()示例

  (3)copy():浅拷贝

a = [1, 22, "ww", "allen"]
v = a.copy()
print(a, v)输出:
[1, 22, 'ww', 'allen'] [1, 22, 'ww', 'allen']

copy()示例

  (4)count():计算元素出现的次数

a = [1, 22, "ww", "allen"]
v = a.count(22)
print(v)输出:
1

count()示例

  (5)extend():扩展原列表,参数:可迭代对象

a = [1, 22, "ww", "allen"]
a.append(["aa", "bb"])
print(a)
b = [1, 22, "ww", "allen"]
b.extend(["aa", "bb"])
print(b)输出:
[1, 22, 'ww', 'allen', ['aa', 'bb']]
[1, 22, 'ww', 'allen', 'aa', 'bb']

extend()示例

  (6)index():根据值获取当前值索引位置(左边优先)

a = [1, 22, "ww", 22, "allen"]
v = a.index(22)
print(v)输出:
1

index()示例

  (7)insert():在指定索引位置插入元素

a = [1, 22, "ww", 22, "allen"]
a.insert(3, "abc")
print(a)输出:
[1, 22, 'ww', 'abc', 22, 'allen']

insert()示例

  (8)pop():删除某个值(不指定索引,默认删除最后一个),并获取删除的值

a = [1, 22, "ww", 22, "allen"]
v = a.pop()
print(a)
print(v)v = a.pop(0)
print(a)
print(v)输出:
[1, 22, 'ww', 22]
allen
[22, 'ww', 22]
1

pop()示例

  (9)remove():删除列表中的指定值,左边优先

a = [1, 22, "ww", 22, "allen"]
a.remove(22)
print(a)输出:
[1, 'ww', 22, 'allen']

remove()示例

  (10)reverse():将当前列表进行翻转

a = [1, 22, "ww", 22, "allen"]
a.reverse()
print(a)输出:
['allen', 22, 'ww', 22, 1]

reverse()示例

四、元组

1.说明

  (1)有序,一级元素不可修改,不能被增加或者删除(可转换为列表,修改完再转换会元组),元组里面的列表等可修改的元素的子元素可被修改;

tu = (1, 22, "ww", 22, "allen", [11, 22, 33])
tu[5][0] = 111
print(tu)输出:
(1, 22, 'ww', 22, 'allen', [111, 22, 33])

元组修改子元素示例

  (2)可迭代对象

2.方法

  (1)count()

  (2)index()

  (3)join()

五、字典

1.说明

  (1)大括号{}括起来的键值对,value可为任何类型的值;

  (2)无序;

  (3)布尔值(1,0)、列表、字典不能作为字典的key;

  (4)通过key找到指定元素

2.方法

  (1)dict.fromkeys():根据序列,创建字典,并指定统一的值

v = dict.fromkeys(["k1",123,"999"],123)
print(v)输出:
{'k1': 123, 123: 123, '999': 123}

dict.fromkeys()示例

  (2)get():根据Key获取值,key不存在时,可以指定默认值(None)

dic = {"k1":"aa", "k2":"bb",}
v = dic['k1']
print(v)
v = dic.get('k3',"cc")
print(v)输出:
aa
cc

get()示例

  (3)pop():删除并获取值

dic = {"k1":"aa", "k2":"bb",}
v = dic.pop("k1")
print(dic,v)输出:
{'k2': 'bb'} aa

pop()示例

  (4)setdefault():设置值,已存在,不设置,获取当前key对应的值;不存在,设置,获取当前key对应的值

dic = {"k1":"aa", "k2":"bb",}
v = dic.setdefault("k1", "aaa")
print(dic,v)v = dic.setdefault("k3", "ccc")
print(dic,v)输出:
{'k1': 'aa', 'k2': 'bb'} aa
{'k1': 'aa', 'k2': 'bb', 'k3': 'ccc'} ccc

setdefault()示例

  (5)update():更新

dic = {"k1":"aa", "k2":"bb",}
dic.update({"k1": "aaa", "k2": "bbb"})
print(dic)dic.update(k1="aaaa", k2="bbbb", k3="cccc")
print(dic)输出:
{'k1': 'aaa', 'k2': 'bbb'}
{'k1': 'aaaa', 'k2': 'bbbb', 'k3': 'cccc'}

update()示例

六、集合

1.说明

  (1)大括号{}括起来的数据集合,元素不可重复;

  (2)可迭代对象

2.方法

  (1)set():转换成集合

s=set('hello')
print(s)输出:
{'e', 'h', 'o', 'l'}

set()示例

  (2)add():增加元素

s={1,2,3,4,5,6}
s.add("3")
print(s)输出:
{1, 2, 3, 4, 5, 6, '3'}

add()示例

  (3)clear():清空集合

s={1,2,3,4,5,6}
s.clear()
print(s)输出:
set()

clear()示例

  (4)copy():复制集合

  (5)pop():随机删元素

  (6)remove():指定删除元素,删除元素不存在会报错

s={1,2,3,4,5,6}
s.remove(7)
print(s)输出:
KeyError: 7

remove()示例

  (7)discard():指定删除元素,删除元素不存在不会报错

s={1,2,3,4,5,6}
s.discard(7)
print(s)输出:
{1, 2, 3, 4, 5, 6}

discard()示例

  (8)intersection():求交集,可用&符号代替

s1 = {1, 2, 3, 4, 5, 6, 'b', 'd'}
s2 = {1, 3, 5, 'a', 'c', 'e'}
print(s1.intersection(s2))
print(s1 & s2)输出:
{1, 3, 5}
{1, 3, 5}

intersection()示例

  (9)union():求并集,可用|符号代替

s1 = {1, 2, 3, 4, 5, 6, 'b', 'd'}
s2 = {1, 3, 5, 'a', 'c', 'e'}
print(s1.union(s2))
print(s1 | s2)输出:
{1, 2, 3, 4, 5, 6, 'd', 'c', 'e', 'a', 'b'}
{1, 2, 3, 4, 5, 6, 'd', 'c', 'e', 'a', 'b'}

union()示例

  (10)difference():求差集,可用-符号代替

s1 = {1, 2, 3, 4, 5, 6, 'b', 'd'}
s2 = {1, 3, 5, 'a', 'c', 'e'}
print(s1.difference(s2))
print(s1 - s2)print(s2.difference(s1))
print(s2 - s1)输出:
{2, 'b', 4, 6, 'd'}
{2, 'b', 4, 6, 'd'}
{'e', 'a', 'c'}
{'e', 'a', 'c'}

difference()示例

  (11)symmetric_difference():求交叉补集,可用^符号代替

s1 = {1, 2, 3, 4, 5, 6, 'b', 'd'}
s2 = {1, 3, 5, 'a', 'c', 'e'}
print(s1.symmetric_difference(s2))
print(s1 ^ s2)输出:
{'c', 2, 4, 6, 'e', 'd', 'a', 'b'}
{'c', 2, 4, 6, 'e', 'd', 'a', 'b'}

symmetric_difference()示例

  (12)difference_update():求差集并更新

s1 = {1, 2, 3, 4, 5, 6, 'b', 'd'}
s2 = {1, 3, 5, 'a', 'c', 'e'}
s1.difference_update(s2)
print(s1)
print(s1 - s2)输出:
{'b', 2, 4, 6, 'd'}
{'b', 2, 4, 6, 'd'}

difference_update()示例

  (13)isdisjoin():两个集合的交集是否为空

s1 = {6, 'b', 'd'}
s2 = {1, 3, 5, 'a', 'c', 'e'}
print(s1.isdisjoint(s2))输出:
True

isdisjoin()示例

  (14)issubset():是否子集

s1 = {6, 'b', 'd'}
s2 = {6, 'b', 'd', 'c', 'e'}
print(s1.issubset(s2))输出:
True

issubset()示例

  (15)issuperset():是否父集

s1 = {6, 'b', 'd'}
s2 = {6, 'b', 'd', 'c', 'e'}
print(s1.issuperset(s2))
print(s2.issuperset(s1))输出:
False
True

issuperset()示例

  (16)update():更新多个值

s1 = {6, 'b', 'd'}
s2 = {2, 'a', 'c'}
s1.update(s2)
print(s1)  #更新多个值

输出:
{2, 'b', 6, 'a', 'c', 'd'}s1 = {6, 'b', 'd'}
s1.add(1, 2, 3)
print(s1) #更新一个值

输出:
TypeError: add() takes exactly one argument (3 given)s1 = {6, 'b', 'd'}
s2 = {2, 'a', 'c'}
s1.union(s2)
print(s1) #不更新

输出:
{'b', 'd', 6}

update()示例

转载于:https://www.cnblogs.com/allentsui/p/8532614.html

1.Python数据类型、方法相关推荐

  1. Python数据类型方法总结

    字符串 Python中的字符串用单引号(')或双引号(")括起来,同时使用反斜杠()转义特殊字符.下面总结一下字符串类型的常用方法. 1.isalnum():如果字符串至少有一个字符,并且所 ...

  2. 1008day1:列表-字符串基础知识、正则提取字符串小数、python数据类型、判断为假的方法、格式判断if elif elif else、字符串遍、计算器、提取str字母、斐波那契数列、水仙花数

    文章目录 一.提取字符串里面的小数:正则 二.Python数据类型 三.== 字符串:str基础知识 == 四.整型及浮点型 五.判断为假的方法 六.判断格式 七.循环:字符串遍历 六.循环1~100 ...

  3. python如何强制转换数据类型,python数据类型强制转换的方法

    python数据类型强制转换的方法 发布时间:2020-06-22 16:43:25 来源:亿速云 阅读:101 作者:清晨 这篇文章将为大家详细讲解有关python数据类型强制转换案例,小编觉得挺实 ...

  4. Python 数据类型

    Python主要数据类型包括list(列表).tuple(元组).dict(字典)和set(集合)等对象,下面逐一介绍这些Python数据类型. list(列表)是Python内置的一种数据类型,作为 ...

  5. Python数据类型和分支循环

    了解过了Python的发展历史,现在开始我们的Python基础吧,如果你有学习过其他的编程语言,你可以跳过这一篇 PyCharm使用图解 开发python的工具你可以自己选择, 这里我推荐的是PyCh ...

  6. python中用于标识字符串的定界符_Python合集之Python数据类型(二)

    在上一节的合集中,我们了解了Python数据类型中的数值类型的相关知识,本节我们将进一步了解一下Python中关于数据类型中的字符串及布尔类型相关的知识. 1. 字符串类型 字符串是连续的字符序列,可 ...

  7. 自学python方法-总算懂得快速学习python的方法

    随着Python的进一步发展,越来越多的现成的Python的机器学习的算法已经发布出来.为了可以更好地运用这些机器学习的算法,我们有必要对Python有个初步的了解.以下是小编为你整理的快速学习pyt ...

  8. Python 数据类型及其用法

    本文总结一下Python中用到的各种数据类型,以及如何使用可以使得我们的代码变得简洁. 基本结构 我们首先要看的是几乎任何语言都具有的数据类型,包括字符串.整型.浮点型以及布尔类型.这些基本数据类型组 ...

  9. CrazyWing:Python自动化运维开发实战 九、Python数据类型之列表

    导语 序列: 序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推,Python已经内置确定序列的长度以及确定最大和最小 ...

  10. python中判断列表数据类型_浅谈Python数据类型判断及列表脚本操作

    数据类型判断 在python(版本3.0以上)使用变量,并进行值比较时.有时候会出现以下错误: TypeError: unorderable types: NoneType() < int() ...

最新文章

  1. LLVM系列文章1: Debian/Ubuntu 安装和使用 LLVM
  2. GCC的内存边界对齐
  3. WPF快速入门系列(6)——WPF资源和样式
  4. mysql的varchar最大值是多少_MySQL varchar计算:求列的数额和计算N的最大值
  5. 解决 FtpClient 类无法导入 .
  6. 2小时彻底搞懂指针与共用体!
  7. 直接输出数组的名字不一定是地址值
  8. 管道符、重定向与环境变量
  9. 新加坡科技设计大学招收全奖博士,以及Research Assistant/Postdoc
  10. dev Gridcontrol控件属性部分
  11. 应用程序范围的键值对
  12. 【报告分享】阿里达摩院:2022十大科技趋势.pdf(附下载链接)
  13. 64位程序core分析
  14. java tostring apache,Java如何使用Apache Commons Lang ToStringBuilder类?
  15. mx250显卡天梯图_mx250显卡天梯图_2020最新笔记本显卡天梯图,看看你的显卡排在哪里吧...
  16. 详解关于卫星影像(卫星地图)的一些常见问题
  17. 解决主机不能访问VirtualBox上Linux虚拟机ip的问题
  18. 2019世界机器人大会
  19. 京东前台PC首页系统技术详解
  20. 人人都应该成为数据分析师

热门文章

  1. Python-100 练习题 04 判断天数
  2. 论文阅读(3)--SPDA-CNN: Unifying Semantic Part Detection and Abstraction for Fine-grained Recognition
  3. [线性代数]Note 1--方程组的几何解释
  4. 东北农业大学大学计算机基础作业答案,大学计算机基础实践教学改革的研究
  5. MySQL多项模糊查询
  6. C++ 中关于optional 使用过程中遇到的问题
  7. 编写一个函数func(),将此函数的输入参数(int型)逆序输出显示,如54321 – 12345,要求使用递归,并且函数体代码不超过8行...
  8. gesturedetector.java_我的flutter代码中的GestureDetector不起作用
  9. 微信小程序获取unionid为空
  10. Android 活体人脸实时采集,百度、虹软