Python全栈之路---数据类型—字符串

字符串:有序的字符的集合,用于存储和表示基本的文本信息,一对单、双、或三引号中间包含的内容称之为字符串

1.特性:有序,不可变(开辟新地址存储字符串,python解释器会定期清空不用了的已存储的)

>>> a = ‘alex‘
>>> id(a)
1806635111064
>>> a = ‘Jack‘
>>> a
‘Jack‘
>>> id(a)
1806635111232

 2.操作  常用:isdigit  replace  find  count  strip  center  split  format  join

(1)得出数据的操作:

 1 >>> s = ‘Hello World!‘
 2 >>> s.swapcase() #大小写反过来
 3 ‘hELLO wORLD!‘
 4 >>> s = ‘Hello World!‘
 5 >>> s.capitalize() #第一个字母大写,其余全部小写
 6 ‘Hello world!‘
 7 >>> s.casefold() #变成统一的小写字母
 8 ‘hello world!‘
 9 >>> s.center(50,‘-‘) #把s放到中间,两边用‘-‘填充,总长度为50
10 ‘-------------------Hello World!-------------------‘
11 >>> s.count(‘o‘) #统计字符‘o‘的数量
12 2
13 >>> s.count(‘o‘,0,5) #统计从0到5字符‘o‘的数量,顾头不顾尾
14 1
15 >>> s2 = ‘a\tb‘ #\b是Tab键
16 >>> s2
17 ‘a\tb‘
18 >>> print(s2)
19 a b
20 >>> s2.expandtabs()
21 ‘a b‘
22 >>> s2.expandtabs(20) #将Tab键的长度扩展到20
23 ‘a                    b‘
24 >>> s.find(‘o‘) #查找字符o 找到返回索引值,找不到返回负数
25 4
26 >>> s.find(‘op‘)
27 -1
28 >>> s.find(‘o‘,0,3) #从0到3查找字符o,找到返回从左边找到的第一个索引值,找不到返回-1,rfind -> 从右边开始数
29 -1
30 >>> s.find(‘o‘,0,5) #顾头不顾尾
31 4
32 >>> s3 = ‘my name is {0}, i am {1} years old.‘
33 >>> s3
34 ‘my name is {0}, i am {1} years old.‘
35 >>> s3.format(‘Alex‘,‘22‘) #格式化,用括号里的依次代替{0}{1},有点像列表
36 ‘my name is Alex, i am 22 years old.‘
37 >>> s3 = ‘my name is {0}, his name is {0}.‘
38 >>> s3.format(‘Alex‘) #括号里的第一个就是{0},两个{0}一样
39 ‘my name is Alex, his name is Alex.‘
40 >>> s3.format(‘Alex‘,‘Jane‘)
41 ‘my name is Alex, his name is Alex.‘
42 >>> s3 = ‘my name is {name}, i am {age} years old.‘
43 >>> s3.format(name = ‘Alex‘,age = ‘22‘) #根据定义命名来赋值,直接写是不行的
44 ‘my name is Alex, i am 22 years old.‘
45 >>> s.index(‘o‘) #返回第一个o的索引值,rindex -> 从右边开始数,其余一致
46 4
47 >>> s.index(‘o‘,5,6) #从5到6返回从左边数第一个o的索引值,没有就报错
48 Traceback (most recent call last):
49     File "<stdin>", line 1, in <module>
50     ValueError: substring not found
51 >>> names = [‘alex‘,‘jack‘,‘rain‘]
52 >>> ‘-‘.join(names) #以 - 来将names里的元素拼接起来,并且进行区分
53 ‘alex-jack-rain‘
54 >>> ‘‘.join(names)
55 ‘alexjackrain‘
56 >>> ‘,‘.join(names)
57 ‘alex,jack,rain‘
58 >>> s = ‘Hello World‘
59 >>> s.ljust(50) #把字符串的长度变成50,长度不够,就在字符串窜后面用空格来填
60 ‘Hello World ‘
61 >>> s.ljust(50,‘-‘) #把字符串的长度变成50,长度不够,就在字符串后面用 - 来填,rjust与ljust相反,rjust在左边填 -
62 ‘Hello World---------------------------------------‘
63 >>> s.zfill(40) #把s长度变成40,不够的在前面用0y填,一般是底层二进制用到
64 ‘00000000000000000000000000000hello world‘
65 >>> s = ‘\n hello world ‘
66 >>> s
67 ‘\n hello world ‘
68 >>> s.strip() #去掉前后的空格   lstrip ->只去掉左边的空格   rstrip ->只去掉右边的空格
69 ‘hello world‘
70 >>> str_in = ‘abcdef‘
71 >>> str_out = ‘[email protected]#$%^‘ # str_in和str_out的字符数量必须一致,如此才能一一对应
72 >>> str.maketrans(str_in,str_out)  #maketrans生成密码对应表,表中为ASCII码
73 {97: 33, 98: 64, 99: 35, 100: 36, 101: 37, 102: 94}
74 >>> table = str.maketrans(str_in,str_out)
75 >>> table
76 {97: 33, 98: 64, 99: 35, 100: 36, 101: 37, 102: 94}
77 >>> s = ‘hello world‘
78 >>> s.translate(table) #将s按照table进行翻译
79 ‘h%llo worl$‘
80 >>> s.partition(‘o‘) #将字符串以从左找到的第一个‘o‘分成两半,rpartition以从右边找到的第一个‘o‘分成两半
81 (‘hell‘, ‘o‘, ‘ world‘)
82 >>> s.replace(‘o‘,‘-‘) #把‘o‘全部换成‘-‘
83 ‘hell- w-rld‘
84 >>> s.replace(‘o‘,‘-‘,1) #把‘o‘换成‘-‘,只换一次
85 ‘hell- world‘
86 >>> s.split() #以空格将s分开,放入列表
87 [‘hello‘, ‘world‘]
88 >>> s.split(‘o‘) #以‘o‘将s分开,放入列表,‘o‘消失
89 [‘hell‘, ‘ w‘, ‘rld‘]
90 >>> s.split(‘o‘,1) #以左边第一个‘o‘将s分开,放入列表,‘o‘消失,rsplit -> 从右边开始数 , splitlines -> 以行,即‘\n‘来分
91 [‘hell‘, ‘ world‘]

(2)判断 True or False 的操作

 1 >>> s.endswith(‘!‘) #s是否以!结尾,startswith -> 以...开始
 2 True
 3 >>> s.endswith(‘!sdf‘) #s是否以!sdf结尾
 4 False
 5 >>> ‘22‘.isalnum() #判断是否是数字和字符,不包括特殊符号
 6 True
 7 >>> ‘22s‘.isalnum()
 8 True
 9 >>> ‘22s!‘.isalnum()
10 False
11 >>> ‘33‘.isdecimal() #判断是否是整数,用法和  isdigit  、  isnumeric
12 True
13 >>> ‘33s‘.isdecimal()
14 False
15 >>> ‘33.3‘.isdecimal()
16 False
17 >>> ‘33‘.isidentifier() #是否是合法的变量名,合法变量名条件:以下划线、字母、数字组成,开头不能是数字,不能纯用数字组合
18 False
19 >>> ‘3asd‘.islower() #字母是否都是小写字母
20 True
21 >>> ‘2asd56ER‘.islower()
22 False
23 >>> ‘33‘.isprintable() #能否被打印,只有文本文件,字节格式的能被打印,纯二进制文件之类的不能被打印(Linux中涉及)
24 True
25 >>> ‘ ‘.isspace() #是否是空格
26 True
27 >>> ‘3de ‘.isspace()
28 False
29 >>> ‘Hello World‘.istitle() #单词的第一个字符是否都是大写,就像新闻标题一样
30 True
31 >>> ‘45ASD‘.isupper() #字母是否都是大写
32 True
33 >>> ‘45sA‘.isupper()
34 False

原文地址:https://www.cnblogs.com/Moxiaoyu666/p/10258156.html

时间: 2024-10-08 10:05:35

Python全栈之路---数据类型—字符串的相关文章

Python全栈之路----数据类型—字典

字典:可变,一种key-value的数据类型 info = { 'stu1101' : 'TengLan Wu' , 'stu1102' : 'LongZe Luola' , 'stu1103' : ' XiaoZe Maliya' } 1.特点:key-value结构:key必须可hash(被hash值不变),且必须唯一.必须为不可变类型:无序的(因为无索引,通过key查询):查找速度快      2.基本操作:创建,添加,查找,修改,删除,清空 1 >>> info = { 2 ..

Python全栈之路----数据类型—元组类型

元组类型:有序,不可变的,又叫只读列表  names = ("alex","jack","eric") 1.元组本身不可变,但如果元组中有可变元素,如列表,那么元组中的这个可变元素是可以改变的     2.相关操作  切片 >>> n2 = (1,2,3,4,5,6,7,8) >>> n2[2:5] (3, 4, 5) >>> n2 = (1,2,3,['a','b'],5) >>

Python全栈之路系列之赋值与运算符

Python全栈之路系列之赋值与运算符 在继续下面的文章之前我们先来浏览一下Python为我们提供的几种运算符,定义两个变量,分别是a和b,a的值是10,b的值是20. 算术运算符 运算符 描述 实例 + 加,两个对象相加 a+b=30 - 减,两个对象相减,可能会得到负数 a-b=-10 * 乘,两数相称或是返回一个被重复若干次的字符串 a*b=200 / 除,两个对象相除 b/a=2 % 取膜,返回除法的余数 b%a=0 ** 幂,返回x的y次幂 a**b=10000000000000000

python 全栈之路

python 全栈之路 一. python 1. Python基础知识部分 Python Python那点事 Python windows和linux下 安装 Python2,Python3 Python 开启入坑之路 Python 基本数据类型 Python 那些零碎的知识点 Python -函数 Python - 面对对象 Python - 模块 Python - 文件操作 Python - python中经常踩得的坑 2. Python - 网络编程 3. Python - 并发编程 二.

Python全栈之路_01

Python全栈之路 前言:因为Python主要是在Linux和widows操作系统上使用所以,首先就介绍Pyhton在这两个平台上的安装和一些基础知识 Linux系统下安装Pyhton 1.工具 虚拟机:VMware workstation 12 Pro Linux系统:CentOS 64 位 VMware虚拟机安装很简单就不说明了. 在虚拟机安装CentOS 需要注意的是: 运行内存分配1G左右即可 可以开机按F2进入bios界面boot目录下选择启动设备选择Hard Drive为优先启动位

Python全栈之路----常用模块----hashlib加密模块

加密算法介绍 HASH       Python全栈之路----hash函数 Hash,一般翻译做“散列”,也有直接音译为”哈希”的,就是把任意长度的输入(又叫做预映射,pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值.这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,而不可能从散列值来唯一的确定输入值. 简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数. HASH主要用于信息安全领域中加密算法,他把一

Python全栈之路4--内置函数--文件操作

上节重点回顾: 判断对象是否属于某个类,例如: 列表中有个数字,但是循环列表判断长度,用len会报错;因为int不支持len,所以要先判断属于某个类,然后再进行if判断. # isinstance(对象,类名) 判断变量输入的对象是否是属于这个类 # 方法1: temp = [11, 22, "", " ", []] print(isinstance(temp, (str, list, tuple))) # 一旦对象属于这个后面元组的类中的任何一个 就返回true

Python全栈之路----函数----返回值

函数外部的代码想要获取函数的执行结果,就可以在函数里用return语句,把结果返回. def stu_register(name,age,course='PY',country='CN'): print('----注册学生信息----') print('姓名:',name) print('年龄:',age) print('国籍:',country) print('课程:',course) if age > 22: return False else: return True registriat

Python全栈之路系列----之-----面向对象4接口与抽象,多继承与多态)

接口类与抽像类 在python中,并没有接口类这种东西,即便不通过专门的模块定义接口,我们也应该有一些基本的概念 编程思想 归一化设计: 1.接口类 不实现具体的方法,并且可以多继承 2.抽象类 可以做一些基础实现,并且不推荐多继承 编程的几类原则: 开放封闭原则:对扩展示开放的,对修改是封闭的依赖倒置原则:高层模块不应该依赖低层模块,二者都应该依赖其抽象:抽象不应该应该依赖细节:细节应该依赖抽象.换言之,要针对接口编程,而不是针对实现编程接口隔离原则:使用多个专门的接口,而不使用单一的总接口.