day7 python字符串的操作及方法
1、字符串
1.1 字符串的操作
# 1.字符串的拼接
strvar = "我爱" + "中国"
# 2.字符串的重复
strvar = "今天下午2点开会" * 3
# 3.字符串跨行拼接
stravr = "5月14日,宝马集团召开了100届股东大会,"\
"这是宝马股东大会历史上首次采用在线形式进行。"
# 4.字符串的索引
#正向索引 0 1 2 3
strvar = "我爱中国"
#逆向索引 -4-3-2-1
# 5.字符串的切片与截取
strnum = "0123456789"
res = strnum[开始值:结束值:步长] # 开始值默认为0,结束值默认取到最后
1.2 字符串的方法
str.split() # 切割成列表
# 参数是负值 ------> 全部切割
# str.split(" ",2) 从左到右,以空格切割2次
# str.rsplit(" ",2) 从右到左,以空格切割2次
str.join() # 拼接成字符串
# "-".join(list) 将list的每一个元素通过'-'拼接起来
str.strip() # 默认去空白
str.rstrip() # 去右边的
str.lstrip() # 去左边的
# str.strip("*") 去指定符号
str.replace() # 替换
str.center() # 居中
str.rjust() # 居右
str.ljust() # 居左
# str.center(100,"-")------>字符串 + 填充字符长度 = 100
str.capitalize() # 首字母大写
str.title() # 每个单词首字母大写
str.upper() # 所有字母变大写
str.lower() # 所有字母变小写
str.swapcase() # 大小写互换
str.count() # 元素出现次数
str.find() # 元素第一次出现的索引位置,没有找到返回 -1
str.index() # 元素第一次出现的索引位置,没有找到返回 报错
str.startswith() # 判断以什么开头
str.endswith() # 判断以什么结尾
str.isupper() # 判断大写
str.islower() # 判断小写
str.isdecimal() # 判断纯数字
1.3 字符串格式化 format
1.3.1 format 传参
# 1.顺序传参
"{}爱{}".format("python","bajie") # "python爱bajie"
# 2.索引传参
"{1}爱{0}".format("python","bajie") # "bajie爱python"
# 3.关键字传参
"{name}年龄{age}".format(name="bajie",age=18) # "bajie年龄18"
# 4.容器类型(list,tuple)传参
# 不能使用逆向索引
data = "{0[0]}默默学{1[0]},然后惊艳{2[0]}!".format(["bajie","wukong","tangseng"],["python","c++","java"],["所有人","一个人"])
print(data)
data = "{class1[0]}默默学{class2[0]},然后惊艳{class3[0]}!".format(class1 = ["bajie","wukong","tangseng"],class2 =["python","c++","java"],class3 = ["所有人","一个人"]) # ------> 推荐使用
print(data)
# 字典key不加引号
data = "{class1[n2]}默默学{class2[s3]},然后惊艳{class3[d2]}!".format(class1 = {"n1":"bajie","n2":"wukong","n3":"tangseng"},class2 ={"s1":"python","s2":"c++","s3":"java"},class3 = {"d1":"所有人","d2":"一个人"})
1.3.2 format 填充字符
# ^ 居中
# > 居右
# < 居左
# {:填充物 格式 数量} 字符串 + 填充字符长度 = 数量
strvar = "{:^10}爱{}".format("python","bajie") # "python爱bajie"
1.3.3 format 进制相关
# :d 强制整型(不是整型会报错)
strvar = "{:10d}".format(123456789) # 多了空格来补
# :f 浮点型(默认6位,四舍五入,自动强转整型)
strvar = "{:.3f}".format(1234.56789) # 1234.568
# :s 强制字符串(不是字符串会报错)
# :, 千位分隔符(3位一隔开)
strvar = "{:,}".format(123456789.1234) # 123,456,789.1234
2、list
2.1 列表的相关操作
# 1.列表的拼接
listvar = [1,2,3] + [4,5,6]
# 2.列表的重复
listvar = [7,8,9] * 3
# 3.列表的切片
# 语法 => 列表[::] 完整格式:[开始索引:结束索引:间隔值]
# (1)[开始索引:] 从开始索引截取到列表的最后
# (2)[:结束索引] 从开头截取到结束索引之前(结束索引-1)
# (3)[开始索引:结束索引] 从开始索引截取到结束索引之前(结束索引-1)
# (4)[开始索引:结束索引:间隔值] 从开始索引截取到结束索引之前按照指定的间隔截取列表元素值
# (5)[:]或[::] 截取所有列表 # 4.列表的获取
listvar = ["唐三藏","孙悟空","沙悟净","猪悟能","紫霞仙子","嫦娥妹妹"]
res = listvar[3] # 单值获取 ----> "猪悟能"
res = listvar[2:] # 多值获取
# 5.列表的修改(若有步长,切多少改多少,需对应)
listvar[2] = "沙和尚" # 单值修改
listvar[2:4] = "白骨精" # 多值修改
listvar[::2] = range(3) # 切多少改多少
# 6.列表的删除
del listvar[2] # 单值删除
del listvar[::2] # 多值删除
day7 python字符串的操作及方法的更多相关文章
- python字符串常用内置方法
python字符串常用内置方法 定义: 字符串是一个有序的字符的集合,用与存储和表示基本的文本信息. python中引号中间包含的就是字符串. # s1='hello world' # s2=&quo ...
- python字符串内容替换的方法(转载)
python字符串内容替换的方法 时间:2016-03-10 06:30:46来源:网络 导读:python字符串内容替换的方法,包括单个字符替换,使用re正则匹配进行字符串模式查找与替换的方法. ...
- python字符串处理内置方法一览表
python字符串处理内置方法一览表 序号 方法及描述 1 capitalize()将字符串的第一个字符转换为大写 2 center(width, fillchar) 返回一个指定的宽度 widt ...
- python—字符串拼接三种方法
python—字符串拼接三种方法 1.使用加号(+)号进行拼接 字符串拼接直接进行相加就可以,比较容易理解,但是一定要记得,变量直接相加,不是变量就要用引号引起来,不然会出错,另外数字是要转换为字 ...
- Python字符串切片操作知识详解
Python字符串切片操作知识详解 这篇文章主要介绍了Python中字符串切片操作 的相关资料,需要的朋友可以参考下 一:取字符串中第几个字符 print "Hello"[0] 表 ...
- python字符串的常见处理方法
python字符串的常见处理方法 方法 使用说明 方法 使用说明 string[start:end:step] 字符串的切片 string.replace 字符串的替换 string.split 字符 ...
- Python字符串的操作
字符串常用操作 name = "my name is alex" # 注: python中方法名前后带下划线的是供内部使用的方法, 如方法__dir__(). 这种方法是不对外提供 ...
- Python 字符串相关操作
# 1 * 重复输出字符串 print('hello'*2) # 2 [] ,[:] 通过索引获取字符串中字符,这里和列表的切片操作是相同的,具体内容见列表 print('helloworld'[2: ...
- Python 字符串大小写操作
#coding=utf-8 #python中字符串的操作 # 字符串的大小写 s='hello_wOrld_oF_you' upper_str = s.upper() print('全部大写: ',u ...
随机推荐
- MFC基于CAsyncSocket套接字客户端代码示范
MFC基于CAsyncSocket套接字客户端代码示范 https://blog.csdn.net/txwtech/article/details/93016190
- jni不通过线程c回调java的函数 --总结
1.JNIEnv类型是一个指向全部JNI方法的指针.该指针只在创建它的线程有效,不能跨线程传递 2.JavaVM是虚拟机在JNI中的表示,一个JVM中只有一个JavaVM对象,这个对象是线程共享的. ...
- Centos7 GRE Tunnel
一.关闭防火墙及selinux 二.CentOS7默认不加载gre内核模块,加载gre内核模块 # modprobe ip_gre 临时加载gre模块(重启后失效) # lsmod |grep g ...
- el-switch 初始值(默认值)不能正确显示状态问题
<el-table-column align="center" label="状态"> <template slot-scope= ...
- webstorm 调试 typescript
{ "compilerOptions": { "target": "es5", "outFile": "bin ...
- C# 从1到Core--委托与事件
委托与事件在C#1.0的时候就有了,随着C#版本的不断更新,有些写法和功能也在不断改变.本文温故一下这些改变,以及在NET Core中关于事件的一点改变. 一.C#1.0 从委托开始 1. 基本方式 ...
- 洛谷 P1196 【银河英雄传说】
这道题其实就是一个带权并查集的基础题,维护的是点权,所以我们要维护两个数组dis:表示当前点到父亲节点的距离,size:当前子树的大小.那么程序就自然出来了: 代码: #include <bit ...
- linux terminal---EOF
we can use cat and eof to enter multiple lines content once.
- 关于位图数据位和系统管理区大小-P6
文章目录 1 背景 2 验证 2.1 环境信息 2.2 创建表空间tbs1 2.3 创建表段并拓展至16个区 2.4 查看3号位图块信息 2.5 拓展16号区 2.6 查看3号位图块信息 1 背景 V ...
- CentOS7下普通账号通过systemctl管理服务需要输入root密码问题
问题描述: 使用普通账号test通过systemctl启动系统服务提示需要输入root密码: 解决方案: 根据上面提示得知权限由polkit进行管理,对应的是org.freedesktop.syste ...