标签:描述 第一个字符 bool 赋值 sub name val inter 放大
Python3基本数据类型
一. 基本数据类型
String(字符串)及其常用操作方法
Python中的字符串用单引号 ‘ 或双引号 " 括起来,同时使用反斜杠 \ 转义特殊字符。字符串的操作方法都不会改变原来字符串的值
1. 字符串的切片
切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则是左闭右开)
正向切片:字符串[起始索引:结尾索引+1:步长(可选)]
正向切片:字符串[起始索引:结尾索引+1:-步长(可选)]
索引值以 0 为开始值,-1 为从末尾的开始位置。
str = ‘Helloworld‘
print(str) # 输出字符串
print(str[0:]) # 输出第一个到最后一个字符,默认到最后一个
print(str[0:-1]) # 输出第一个到倒数第二个的所有字符
print(str[0]) # 输出字符串第一个字符
print(str[2:5]) # 输出从第三个开始到第五个的字符
print(str[2:5:2]) # 输出从第三个和第五个字符,步长为2
print(str[:2:-2]) # 反向加步长,输出从最后一个字符到第3个字符,步长为-2
print(str[2:]) # 输出从第三个开始的后的所有字符
print(str * 2) # 输出字符串两次
print(str + "TEST") # 连接字符串
执行以上程序输出如下:
Helloworld
Helloworld
Helloworl
H
llo
lo
drwl
lloworld
HelloworldHelloworld
HelloworldTEST
1、反斜杠可以用来转义,使用r可以让反斜杠不发生转义。
2、字符串可以用+运算符连接在一起,用*运算符重复。
3、Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。4、Python中的字符串不能改变。
2. 字符串的拼接
1. 用 + 拼接
>>> ‘Hello‘+‘world‘‘Helloworld‘
2. 将字符串放在一起,会自动拼接为一个字符串
>>> ‘Hello‘ ‘world‘‘Helloworld‘
3. ‘*’.join(list) 用*连接list 变成一个字符串,list 可以是字符,列表,字典(可迭代的对象), int 类型不能被连接
>>> list = [‘1‘,‘test‘,‘hello‘]
>>> ‘*‘.join(list)
‘1*test*hello‘
3. 字符串的分割
name.split() 默认按照空格分割
name.rsplit() 默认按照空格分割,从右往左分割
name.split(‘,‘,2) 按照逗号分割,分割次数为2(可选)
4. 去掉空格和特殊符号
name.strip() 去掉空格和换行符
name.strip(‘xx‘) 去掉指定的某个字符串
name.lstrip() 去掉左边的空格和换行符
name.rstrip() 去掉右边的空格和换行符
5. 字符串的搜索和替换
name.count(‘x‘) 查找某个字符在字符串里面出现的次数
name.capitalize() 首字母大写
name.capitalize() 首字母大写
name.swapcase() 大小写翻转
name.center(n,‘-‘) 把字符串放中间,两边用- 补齐
name.find(‘x’) 找到这个字符返回下标,有多个时返回第一个;不存在的字符返回-1
name.index(‘x‘) 找到这个字符返回下标,有多个时返回第一个;不存在的字符报错
name.replace(oldstr, newstr) 字符串替换
name.format() 字符串格式化
6. 字符串的常用方法
S.startswith(‘xx’, start, end) # 判断是否以xx开头,返回布尔值
S.endswith(‘xx‘, start, end) # 判断是否以xx结尾,返回布尔值
S.isalnum() #是否全是字母和数字,并至少有一个字符
S.isalpha() #是否全是字母,并至少有一个字符
S.isdigit() #是否全是数字,并至少有一个字符
S.isspace() #是否全是空白字符,并至少有一个字符
S.islower() #S中的字母是否全是小写 S.isupper() #S中的字母是否全是大写
S.istitle() #S是否是首字母大写的
S.find(“xx",1,6) # 在指定范围内寻找目标元素是否存在,存在返回目标元素的索引,不存在返回-1
S.index(“xx",1,6) # 在指定范围内寻找目标元素是否存在,存在返回目标元素的索引,不存在报错
split() #从左向右寻找,以某个元素为中心将左右分割成两个元素并放入列表中,最大分割次数为可选参数,不写或-1表示没有限制
rsplit() #从右向左寻找,以某个元素为中心将左右分割成两个元素并放入列表中,最大分割次数为可选参数,不写或-1表示没有限制
splitlines() #根据换行符(\n)分割并将元素放入列表中
多个变量赋值及交换
>>> a,b,c=1,2,3>>> print(a,b,c)1 2 3>>> a,b,c=c,a,b>>> print(a,b,c)3 1 2
字符串运算符
下表实例变量a值为字符串 "Hello",b变量值为 "Python":
操作符 |
描述 |
实例 |
+ |
字符串连接 |
a + b 输出结果: HelloPython |
* |
重复输出字符串 |
a*2 输出结果:HelloHello |
[] |
通过索引获取字符串中字符 |
a[1] 输出结果 e |
[ : ] |
截取字符串中的一部分,遵循左闭右开原则,str[0,2] 是不包含第 3 个字符的。 |
a[1:4] 输出结果 ell |
in |
成员运算符 - 如果字符串中包含给定的字符返回 True |
‘H‘ in a 输出结果 True |
not in |
成员运算符 - 如果字符串中不包含给定的字符返回 True |
‘M‘ not in a 输出结果 True |
r/R |
原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 原始字符串除在字符串的第一个引号前加上字母 r(可以大小写)以外,与普通字符串有着几乎完全相同的语法。 |
print( r‘\n‘ ) print( R‘\n‘ ) |
% |
格式字符串 |
|
List(列表)及其常用操作方法
列表是python中的基础数据类型之一,以 [] 括起来,每个元素以逗号隔开,里面可以存放各种数据类型,如数字,字符串,元组,列表,字典。
列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。
1. 增
list.insert(0,123) # 按照列表的索引增加
list.append(‘abc’) # 在列表最后增加
list.extend(‘hello’) # 迭代的增加
2. 删
list.pop(2) # 按照列表的索引删除,会返回删除的元素,没有找到该元素时会报错
del li[2:3] # 可按照列表的索引删除或对列表切片删除,没有返回值
li.remove(‘hello’) # 按照元素的内容删除
li.clear() # 清空列表
3. 改
li[1] = ‘123’ # 按照列表的索引对元素赋值
li[1:3] = [‘a‘,‘b‘] # 切片后赋值
4. 查
切片、循环
Dict(字典)及其常用操作方法
字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据。python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可哈希的。可哈希表示key必须是不可变类型,如:Number(数字)、String(字符串)、Tuple(元组)。
字典(dictionary)是除列表意外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取,效率会高很多。
1. 增
>>> dic = {‘name‘: ‘Tom‘}
# 直接增加: 无此键则增加,有此键则修改
>>> dic[‘name‘] = ‘Tom‘
# setdefault:无此键则增加,有此键则不变,并返回字典内的键值
>>> dic.setdefault(‘name‘,‘James‘)
‘Tom‘
2. 删
>>> dic = {‘name‘: ‘Tom‘}
pop # 按照键删除键值对且有返回值,第二个参数可设置返回值,如果字典中无此键,设置第二个参数可以避免报错
>>> dic.pop(‘age‘, ‘无此键‘)
‘无此键‘
clear # 清空字典
>>> dic.clear()
del # 无返回值
>>> del dic[‘name‘]
3. 改
>>> dic = {‘name‘: ‘Tom‘}
# 按照键改
>>> dic[‘name‘] = ‘James‘
# 更新, 将dic2中所有键值对覆盖添加
>>> dic.update(dic2)
>>> dic.update(age=20)
4. 查
>>> dic = {‘name‘: ‘Tom‘}
# 按照键查,无此键会报错
>>> dic[‘name‘]
>>> dic.get(‘name‘)
‘Tom‘
>>> dic.get(‘age‘) # 无此键默认返回None
>>> dic.get(‘age‘, ‘无此键‘) # 无此键时设置指定的返回值
Set(集合)及其常用操作方法
集合是无序的,不重复的数据集合,它里面的元素是可哈希的(不可变类型),但是集合本身是不可哈希(所以集合做不了字典的键)的。以下是集合的几个特点:
1. 集合内的元素必须是不可变的数据类型
2. 集合是无序的并且去重,元素可hash
3. 关系测试,测试两组数据之前的交集、差集、并集等关系。
1. 增
>>> set = {1,2,3}
>>> set.add(4)
>>> print(set)
{1,2,3,4}
>>> set.update([‘A‘,‘B‘])
{1,2,3,4,‘A‘,‘B‘}
2. 删
>>> set = {1,2,3}
>>> set.remove(1) # 按照元素删除
>>> set.pop() # 随机删除
2
>>> set.clear() #清空集合
集合的关系运算
交集(& 或者 intersection)
set1 = {1,2,3,4,5} set2 = {4,5,6,7,8} print(set1 & set2) # {4, 5} print(set1.intersection(set2)) # {4, 5}
并集。(| 或者 union)
set1 = {1,2,3,4,5} set2 = {4,5,6,7,8} print(set1 | set2) # {1, 2, 3, 4, 5, 6, 7,8}print(set2.union(set1)) # {1, 2, 3, 4, 5, 6, 7,8}
差集。(- 或者 difference)
set1 = {1,2,3,4,5} set2 = {4,5,6,7,8} print(set1 - set2) # {1, 2, 3} print(set1.difference(set2)) # {1, 2, 3}
反交集。 (^ 或者 symmetric_difference)
set1 = {1,2,3,4,5} set2 = {4,5,6,7,8} print(set1 ^ set2) # {1, 2, 3, 6, 7, 8} print(set1.symmetric_difference(set2)) # {1, 2, 3, 6, 7, 8}
子集与超集
set1 = {1,2,3} set2 = {1,2,3,4,5,6} print(set1 < set2) print(set1.issubset(set2)) # 这两个相同,都是说明set1是set2子集。 print(set2 > set1) print(set2.issuperset(set1)) # 这两个相同,都是说明set2是set1超集。
标签:描述 第一个字符 bool 赋值 sub name val inter 放大
原文地址:https://www.cnblogs.com/xiongying2018/p/10159636.html