Python学习之路3 - 字符串操作&字典

本节内容:

  • 常用的字符串处理。
  • 格式化输出字符串。
  • 字符串的替换。
  • 字符串和二进制的相互转化。
  • 字典的操作

字符串操作

常用的字符串处理

name = 'vector'

print(name.capitalize()) # 首字母大写
print(name.count('e')) # 判断字符e在字符串中有多少个
print(name.center(50,'-')) # 一共打印50个字符,将vector放在中间,两边用-填充
print(name.endswith('r')) # 判断字符串以什么结尾, 如果是以r结尾则返回true
print(name.expandtabs(tabsize=10)) # 如果在字符串中加入\t,则在该位置上加入tabsize个空格
print(name.find('ec')) # 找到e在字符串中的位置
print(name.isalnum()) # 如果字符串里面只包含英文和数字, 则返回True
print(name.isalpha()) # 如果字符串里面是纯英文, 则返回True
print(name.isdecimal()) # 如果字符串是十进制数字, 则返回True
print(name.isdigit()) # 如果字符串是否为整数, 则返回True
print(name.isidentifier()) # 判断是否是一个合法的标识符(变量名), 合法则返回True
print(name.islower()) # 判断是否为小写, 是则返回True
print(name.isupper()) # 判断是否为大写, 是则返回True
print(name.isspace()) # 判断是否为空格, 是则返回True
print('My Name Is'.istitle()) # 判断是否为标题(首字符大写), 是则返回True
print('+'.join(['1','2','3'])) # 将列表里面的每个元素用'+'拼接起来
print(name.ljust(50,"*")) # 如果字符串长度小于50, 则不够的在左侧用*补充
print(name.rjust(50,"*")) # 如果字符串长度小于50, 则不够的在右侧用*补充
print(name.lower()) # 将大写变成小写
print(name.upper()) # 将小写变成大写
print('\nvector'.lstrip()) # 去掉字符串左边的空格和回车
print('vector\n'.rstrip()) # 去掉字符串右边的空格和回车
print('\nvector\n'.strip()) # 去掉字符串两边的空格和回车
print('name is a book'.rfind('a')) # 从右边开始找a,返回找到的位置
print('name is a book'.split(' ')) # 将字符串按照空格为界分装成列表, 不写参数则分隔符默认为空格
print('name is \na book'.splitlines()) # 将字符串根据换行符为界分装成列表
print('name is a book'.swapcase()) # 大小写互换
print('name is a book'.title()) # 将字符串变成标题(首字母大写)
print('name'.zfill(50)) # 如果字符串不够50个,则在左边用0填充

格式化输出字符串

name = 'vector {name} {age}'
print(name.format(name = 'rev',age=123)) # 格式化字符串
print(name.format_map({'name':'rev','age':123})) # 字典的形式格式化字符串

字符串替换

#先用maketrans设置替换规则, 然后用translate执行替换
p = str.maketrans('asdfgn','123456') #第一个参数是被替换的字符,第二个参数是替换的字符
print('name'.translate(p)) # 将规则p传入,打印出来的就是61me,因为n和a被6和1替换掉了

print('name'.replace('n','b',1)) # 将n换成b,第三个参数表示替换几个,如果不写则默认全部替换

字符串和二进制的相互转化

msg = '我爱大延边日不落帝国'
print(msg) # 字符串输出
print(msg.encode(encoding='utf-8')) # 将字符串转换成二进制
print(msg.encode(encoding='utf-8').decode(encoding='utf-8')) # 将二进制转换成字符串

encode参数表示之前是什么格式的,decode参数表示要转换成什么格式的。
如果encode和decode不写参数,默认就是utf-8。

字典

字典一种key - value 的数据类型,使用就像我们上学用的字典,通过笔划、字母来查对应页的详细内容。

字典的特性:

  • dict是无序的
  • key必须是唯一的,so 天生去重

语法:

info = {
    'str1':'zhangsan',
    'str2':'lisi',
    'str3':'wangwu',
    'str4':'zhaoliu'
}

常见的字典操作:

info = {
    'str1':'zhangsan',
    'str2':'lisi',
    'str3':'wangwu',
    'str4':'zhaoliu'
}

print(info) # 打印全部字典
print(info['str2']) # 根据键名打印字典元素
info['str1'] = 'yangzirui' # 这样就会修改值, 如果键名不存在则会直接创建
del info['str2'] # 删除该元素
info.pop('str2') # 这也是删除
print(info.popitem()) # 随机删除一个, 并返回他的键值对
print(info['str1']) # 打印数据, 如果键名不存在, 就会报错,不推荐用
print(info.get('str2')) # 打印数据, 如果键名不存在, 则返回none, 推荐
print('str1' in info) # 判断键名是否存在,存在打印true,否则打印false
aaa = info.setdefault('str5','liangsohohfefho') # 如果info里面有键为str5的,则直接返回对应的值;如果没有,则创建后返回对应的值

a = {
    'str1':'asdfsdfd',
    1:2,
    2:3
}
info.update(a) # 将字典a合并到info中,如果有交叉,则用a字典中的值
info.items() # 将字典转成列表, 列表中的每个元素都由元组组成,每个元组又原字典的每个键值对组成

c = dict.fromkeys([1,2,3],'test') # 创建一个新字典, 键为1,2,3, 值均为test, 如果不写值,则均为none;后面赋的值是三个键共有的, 所以改一个就全都改了

循环字典:

info = {
    'str1':'zhangsan',
    'str2':'lisi',
    'str3':'wangwu',
    'str4':'zhaoliu'
}
#第一种循环方法
for i in info:
    print(i,info[i])
# 这应该是最基本的循环了

# 第二种循环方法
for k,v in info.items():
    print(k,v)
# 这种循环方式的效率没有第一种循环效率高,因为这种需要将字典转换成列表

输出结果:(两种循环方式均是这样)

原文地址:https://www.cnblogs.com/imzry/p/11885588.html

时间: 2024-11-08 13:03:52

Python学习之路3 - 字符串操作&字典的相关文章

Python学习之路13——字符串2

1只适用与字符串的操作符 1.1格式化操作符(%) Python风格的字符串格式操作符.只适用与字符串类型,非常类似于C语言中的printf()函数的字符串格式化,都是用%,并且支持所有的printf()的格式化操作. 字符串格式化符合如下: %c                     转换成字符(ASCII码值,或者长度为一的字符串)  %r                     优先用repr()函数进行字符串转换  %s                     优先用str()函数进行

Python学习之路4 - 文件操作&编码转换

文件操作 文件操作大概分三步: 把文件打开. 操作文件. 把文件关上. 打开文件 打开文件用open()函数,打开成功后返回一个资源,具体语法如下. open(要打开的文件,打开方式,打开文件的格式,默认为utf-8) #例如 f = open('passengers.txt','r',encoding='utf-8') 上例用open以只读的模式打开文件,因为该文本是utf-8编码的,所以第三个参数是utf-8 w 模式是写入,是创建一个新文件的写,所以如果已经有了该文件就会被覆盖掉,注意安全

Python学习之路-string字符串的常用方法

大小写转换 1 __author__ = "KuanKuan" 2 print("name is JankinYu".capitalize())#转为首字母大写 3 print("name is JankinYu".title())#转为标题形式 Name Is Jankinyu 4 print("NAMW".lower())#转换为小写 5 print("name".upper())#转换为大写 6 pr

Python学习之路:文件操作

文件基本操作: 打开.读取.追加.关闭 #data = open("yesterday",encoding="utf-8").read() #打开并读取文件 f=open("yesterday",'r',encoding="utf-8") #文件句柄 data = f.read() print(data) f=open("yesterday2",'w',encoding="utf-8")

Python学习之路:文件操作之增删改查

f = open("yesterday","r",encoding="utf-8") #print(f.read()) #for i in range(5): # print(f.readline()) #打印前5行 #low loop ''' for index,line in enumerate(f.readline()): if index == 9: print('---------我是分割线---------') continue pr

python学习第二天 pyhon字符串操作

s='cescesc' print(s.isupper)#判断是不是都是大写字母 print(s.isdigit)#判断是否位为数字 print(s.islower)#判断是不是小写字母 number=input('请输入要产生几条:') print(s.index('d'))#找不到报错 print(s.find('d'))找不到报-1 s.count('a')统计多少个出现 s.strip()两边空格 s.lstrip()左空格去除 s.rlstrp()右边空格去除 s.startswith

python基础10 字符串操作,字典操作,集合操作

本节内容: 字符串操作 字典操作 集合操作 字符串操作 概述 字符串是以''或""括起来的任意文本,比如'abc',"xyz"等等.请注意,''或""本身只是一种表示方式,不是字符串的一部分,因此,字符串'abc'只有a,b,c这3个字符. 如果字符串本身包含'怎么办?比如我们要表示字符串 I'm OK ,这时,可以用" "括起来表示: "I'm OK" 类似的,如果字符串包含",我们就可以用'

Python 学习之路(三)

Python 学习之路(三) 以下所用的是Python 3.6 一.集合部分 集合是一个无序的,不重复的数据集合,主要用来去重,以及关系测试:交集,差集,并集等 1.1 关系操作 1.1.1 列表去重 可以给列表去重,例如: 1 set_demo = [1,2,3,4,5,3,2,1] # 列表 2 set_demo = set(set_demo) # 转换成集合,来去重 3 print(set_demo) 1.1.2 取交集 intersection()方法 可以获得两个集合的交集部分,例如:

Python学习之路(第一周)

走上软件开发之路已经三个年头.我本人是android原生开发出生.期间由于工作的需要以及开发的趋势发展,也走上混合开发的道路,现在主要运用ionic框架进行移动端app的开发.但是未来的互联网发展趋势还是大数据+人工智能.所以现在学习Python就很有必要.这里就不介绍Python语言的优劣了,想具体了解的小伙伴可以自行度娘吧. 好了,直接步入正题. 本博客主要记录自己接下来几个月的Python学习之路,能力有限,期间有什么表达不对的欢迎大家留言区批评指正! Python版本:Python3.5