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字符串的操作及方法的更多相关文章

  1. python字符串常用内置方法

    python字符串常用内置方法 定义: 字符串是一个有序的字符的集合,用与存储和表示基本的文本信息. python中引号中间包含的就是字符串. # s1='hello world' # s2=&quo ...

  2. python字符串内容替换的方法(转载)

    python字符串内容替换的方法 时间:2016-03-10 06:30:46来源:网络 导读:python字符串内容替换的方法,包括单个字符替换,使用re正则匹配进行字符串模式查找与替换的方法.   ...

  3. python字符串处理内置方法一览表

    python字符串处理内置方法一览表   序号 方法及描述 1 capitalize()将字符串的第一个字符转换为大写 2 center(width, fillchar) 返回一个指定的宽度 widt ...

  4. python—字符串拼接三种方法

    python—字符串拼接三种方法   1.使用加号(+)号进行拼接 字符串拼接直接进行相加就可以,比较容易理解,但是一定要记得,变量直接相加,不是变量就要用引号引起来,不然会出错,另外数字是要转换为字 ...

  5. Python字符串切片操作知识详解

    Python字符串切片操作知识详解 这篇文章主要介绍了Python中字符串切片操作 的相关资料,需要的朋友可以参考下 一:取字符串中第几个字符 print "Hello"[0] 表 ...

  6. python字符串的常见处理方法

    python字符串的常见处理方法 方法 使用说明 方法 使用说明 string[start:end:step] 字符串的切片 string.replace 字符串的替换 string.split 字符 ...

  7. Python字符串的操作

    字符串常用操作 name = "my name is alex" # 注: python中方法名前后带下划线的是供内部使用的方法, 如方法__dir__(). 这种方法是不对外提供 ...

  8. Python 字符串相关操作

    # 1 * 重复输出字符串 print('hello'*2) # 2 [] ,[:] 通过索引获取字符串中字符,这里和列表的切片操作是相同的,具体内容见列表 print('helloworld'[2: ...

  9. Python 字符串大小写操作

    #coding=utf-8 #python中字符串的操作 # 字符串的大小写 s='hello_wOrld_oF_you' upper_str = s.upper() print('全部大写: ',u ...

随机推荐

  1. C#数据结构与算法系列(六):链表——双链表(Double-LinkedList)

    1.对比单向链表 单向链表查找的方向只能是一个方向,而双向链表可以向前或者向后查找 单向链表不能自我删除,需要靠辅助节点,而双向链表可以自我删除 对于单向链表的删除,我们首先要找到单向链表待删除节点的 ...

  2. Flutter学习笔记(35)--通知Notification

    如需转载,请注明出处:Flutter学习笔记(35)--通知Notification 通知的NotificationListener和我们之前写的事件的Listener一样,都是功能性的组件,而且也都 ...

  3. android自定义控件onLayout方法

    onLayout设置子控件的位置,对应一些普通的控件例如Button.TextView等控件,不存在子控件,所以可以不用复写该方法. 向线性布局.相对布局等存在子控件,可以覆写该方法去控制子控件的位置 ...

  4. Socket连接和Http连接

    Socket连接与HTTP连接我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容,如果想要使传输的数据有意义,则必须使用到应用层协议,应用层协议有 ...

  5. 上位机面试必备——TCP通信灵魂二十问【下】

    上篇文章跟大家介绍了TCP通信常见的前10个面试题,没看过的小伙伴可以点击下方链接进行查看: 上位机面试必备——TCP通信灵魂二十问[上] 今天就后面的10个面试题接着做下说明:欢迎关注[dotNet ...

  6. 安全测试中session和cookie

    很多朋友做过安全测试应该都知道session和cookies他们的不同点: 1.存取方式不同.----cookie不支持中文,需要编码,仅支持ascll值.session能够存取任何类型的数据,包括j ...

  7. linux版本百度网盘只能登录一次的解决方法

    rm -rf ~/baidunetdisk 重新启动百度网盘,解决-

  8. MFC线程(二):线程同步临界区CRITICAL SECTION

    当多个线程同时使用相同的资源时,由于是并发执行,不能保证先后顺序.所以假如时一个公共变量被几个线程同时使用会造成该变量值的混乱. 下面来举个简单例子. 假如有一个字符数组变量 char g_charA ...

  9. Syntax error, insert "}" to complete MethodBody

    jsp中代码在Eclipse中打开正常,导入项目导入MyEclipse后显示如下异常: Syntax error, insert "}" to complete MethodBod ...

  10. js写一个简单的九九乘法表

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...