# ### 字符串相关函数 (函数就是方法的意思,完成某个功能)

""" 语法: 字符串.函数  """

*capitalize 字符串首字母大写
*title 每个单词的首字母大写
*upper 将所有字母变成大写
*lower 将所有字母变成小写
*swapcase 大小写互换
*len 计算字符串的长度
*count 统计字符串中某个元素的数量
*find 查找某个字符串第一次出现的索引位置
*index 与 find 功能相同 find找不到返回-1,index找不到数据直接报错
*startswith 判断是否以某个字符或字符串为开头
*endswith 判断是否以某个字符或字符串结尾
#isupper 判断字符串是否都是大写字母
#islower 判断字符串是否都是小写字母
#istitle 判断字符串是否每个单词都首字母大写
#isalnum 判断字符串是否是由数字、字母、汉字组成
*isalpha 判断字符串是否由字母或文字组成
*isdigit 检测字符串数是数字组成 接受二进制字节流
*isdecimal 检测字符串是否以数字组成 必须是纯数字
#isnumeric 检测字符串是否以数字组成 接受中文"四"
#isspace 判断字符串是否由空白符组成
*split 按某字符将字符串分割成列表(默认字符是空格)
*join 按某字符将列表拼接成字符串(容器类型都可)
#splitlines 按换行来进行切分(\n)
#zfill 填充字符串(默认填充0,原字符串右对齐)
#ljust 填充字符串,原字符居左 (默认填充空格)
#rjust 填充字符串,原字符居右 (默认填充空格)
*center 填充字符串,原字符居中 (默认填充空格)
*strip 默认去掉首尾两边的空白符
#rstrip 去掉右边某个字符
#lstrip 去掉左边某个字符
*replace()
功能: 把字符串的旧字符换成新字符
格式: 字符串.replace('旧字符','新字符'[, 限制替换的次数])
返回值: 替换之后的字符串

#maketrans translate 是一对
maketrans()
功能: 制作用于字符串替换的映射表
格式: 字符串.maketrans('查找字符','替换字符')两个字符必须长度相等
返回值: 字典
translate()
功能: 进行字符串替换操作
格式: 字符串.translate(maketrans返回的字典)
返回值: 替换之后的字符串
以下是具体方法:

# capitalize 字符串首字母大写

strvar = "this is my world"

res = strvar.capitalize()

print(res)

#title 每个单词的首字母大写 (非字母类的就可以让后面字符大写)

strvar=  "this is 888my ###world"

res  = strvar.title()

print(res)

#upper将所有字母变成大写

#lower 将所有的字母变成小写

strvar = "daddaFDS"

res = strvar.upper()

print(res)

res =strvar.lower()

print(res)

# swapcase 大小写互换

strvar = "qq eee AAAdF"

res = strvar.swapcase()

print(res)

# *len 计算字符串的长度  (所有容器类型数据都可以使用len)

strvar = "阿士大夫撒地方撒旦法师打发尽快哈手机看地方撒即可劳动防护"

res = len(strvar)

print(res)

# count 统计字符串中某个元素的数量

strvar = "阿士大大夫撒大地方撒旦法师打发尽快哈手机看地方撒即可劳动防护"

res =strvar.count("大")

print(res)

# find 查找某个字符串第一次出现的索引位置

'''

find("字符串",start,end) 从哪里找到哪里结束 高位end取不到

如果find没找到 , 返回-1

'''

strvar = "oh Father This Is mY Favorate girl"

res = strvar.find("F")

res = strvar.find("Father")

print(res)

# 如果有开始,没有结束,默认查找到最后

res = strvar.find("F",4)

print(res)

res = strvar.find("s",14,16)  #-1

print(res)

# *index 与 find 功能相同 find找不到返回-1,index找不到数据直接报错

# index index 和 find 用法一样,只不过如果找不到直接报错

# 推荐使用find ****

# res = strvar.index("!") #ValueError: substring not found

# *starts with 判断是否以某个字符或字符串为开头

'''endswith startswith("字符串",start,end) 高位end 取不到 '''

strvar = "oh Father This Is mY Favorate girl"

res = strvar.startswith("oh")

res = strvar.startswith("oh",3)

print(res)

#endswith 判断是否以某个字符或者字符串结尾

res = strvar.endswith("r1")

res = strvar.endswith("s",5,14)

res = strvar.endswith("r",-6,-1)

print(res)

# isalpha 判断字符串是否由字母或文字组成

strvar= "ddadasdsads84"

strvar= "ddadasdsads多少度"

print(res)

# isdigit 检测字符串数是数字组成 接受二进制字节流

strvar = "48489984"

res =strvar.isdigit()

print(res)

'''

二进制字节流:用来存储或传输数据用的一种数据

语法: b'字符串'  b后面的字符串只能是ascii编码中的字符集

byte 字节 bytes 字节流

'a'  字符 "aaa" 字符串

如果是中文字符 ,需要后期学到的encode 和 decode

'''

strvar = b'12345'

print(strvar,type(strvar))

#strvar =b"防守打法"  error

# print(strvar)

res = strvar.isdigit()

print(res)

# isdecimal 检测字符串是否以数字组成  必须是纯数字

strvar = "984848"

# strvar = b'12345' error

res = strvar.isdecimal()

print(res)

#split 按某字符将字符串分割成列表(默认字符是空格)

strvar = "you can you up no can no bb"

res = strvar.split()

print(res)

strvar ="you:can:you:up:no:can:no:bb"

res = strvar.split(":")

# 可以接受2个参数,第二个参数意味着分隔几次(# 可以接受2个参数 , 第二个参数意味着分隔几次(从左到右))

res = strvar.split(":",3)

# 可以反向分隔 rsplit (从右向左)

res =strvar.rsplit(":",2)

print(res)

# join  按某字符将列表拼接成字符串(容器类型都可以)

lst = ['you', 'can', 'you', 'up', 'no', 'can', 'no', 'bb']

res = '+'.join(lst)

res = '|'.join(lst)

res = ' '.join(lst)

print(res)

#center 填充字符串 原字符居中(默认填充空格)

'''  原字符个数+要填充的字符一共10个  '''

strvar = "那天"

res = strvar.center(10,"!")#可以选择要填充的符号

res = strvar.center(10)#如果不写默认填充空格

# strip  默认去掉首尾两边的空白符 (空格 \n \t \r\n)

strvar= "\t 今天天气不错     \n      "

print(strvar)

res = strvar.split()

print(res)

# *replace()

strvar = "可爱滴小狼狗喜欢吃肉,有没有,有没有,还有没有"

# replace("原字符串","要替换的字符串",[可选择替换几次])

res = strvar.replace("有没有","真没有")

print(res)

res = strvar.replace("有没有","真没有",1)

print(res)

#rstrip 去掉右边某个字符

#lstrip 去掉左边某个字符

# ### 字符串的格式化format

'''

语法: {} 来进行占位

(1)顺序传参

(2)索引传参

(3)关键字传参

(4)容器类型数据(列表或元组)传参

'''

# (1) 顺序传参

strvar = "{}给{}一个飞吻".format("A","B")

print(strvar)

# (2) 索引传参

strvar = "{1}向{0}开了一枪,饮弹而亡".format("A","B")

print(strvar)

# (3) 关键字传参

strvar = "{hjy}对{zyw}进行扫射,鸡飞狗跳,狗急跳墙".format(zyw="A",hjy="B")

print(strvar)

# (4)容器类型传参

strvar = "{0[1]}向{1[1]}发了一份情书和一张私人照片,鼻血直冒三万英尺".format(["A,"B","C"],("D","E"))

print(strvar)

# (2) 如果是字典 , 场景发生在format字符串格式化当中, 主要通过键取值时,不要加上引号

strvar = "{group1[1]}向{group2[sjn]}发了一份情书和一张私人照片,鼻血直冒三万英尺"

res = strvar.format(group1 = ["A","B","C"],group2 = {"sjn":"A","ch":"B"})

print(res)

# ### format 填充符号 与 格式化

# (5)format的填充符号的使用( ^ > < )

'''

^ > <

^ : 原字符居中

> : 原字符串居右

< : 原字符串居左

{who:*<10}

 

who: 关键字

*  : 代表要填充的字符

<  : 原字符串居左

10 : 原字符 + 要填充的字符串 一共10个

'''

# strvar = "{who:*^10}在长春长生{something:>>10},心情{feel:!<10}"

# res = strvar.format(who="潘伟成",something="扎一打疫苗",feel="爽歪歪")

# print(res)

print("<==>")

strvar = "{dic[who]:*^10}在长春长生{dic[something]:>>10},心情{dic[feel]:!<10}"

res = strvar.format(dic = {'who':"潘伟成",'something':"扎一打疫苗",'feel':"爽歪歪"})

print(res)

# (6)进制转换等特殊符号的使用( :d :f :s :, )

# :d 整型占位符

strvar = "A买了{:d}个兰博基尼"

res = strvar.format(10)

print(res)

# :3d

strvar = "A买了{:3d}个兰博基尼"

res = strvar.format(10)

print(res)

# :^3d

strvar = "A买了{:<3d}个兰博基尼"

strvar = "A买了{:>4d}个兰博基尼"

strvar = "A买了{:^4d}个兰博基尼"

res = strvar.format(10)

print(res)

# :f 浮点型占位符98.94 :.2f 小数点保留2位

strvar = "A体重是{:.2f}斤"

res = strvar.format(98.943333)

print(res)

# :s 字符串占位符

strvar = "{:s}"

res = strvar.format("好看的皮囊千篇一律,有趣的灵魂200多斤")

print(res)

# :, 金钱占位符

strvar = "{:,}"

res = strvar.format(1234567)

print(res)

转载于:https://www.cnblogs.com/-sch-593057927/p/10804486.html

python小白——进阶之路——day6天---字符串相关相关函数,格式化(format)相关推荐

  1. python小白——进阶之路——day天-———列表的相关操作以及函数

    ###列表的相关操作 #(1)列表的拼接lst1=[1,2] lst2=[3,4] listvar = lst1+lst2 print(listvar) #(2)列表的重复lst = [1,2,3] ...

  2. python小白——进阶之路——day7天---字典和集合的相关函数

    ### 字典的相关函数(增删改查)#(1)增dictvar= {}dictvar['top'] = "凯"dictvar['middle'] = "妲己"dic ...

  3. Python爬虫底层知识简介 - AI小白进阶之路

    目录 一.通讯协议 1.1 端口 1.2 通讯协议 二.网络模型 2.1 网络模型结构 2.2 HTTPS是什么 2.3 SSL怎么理解 三.爬虫介绍 3.1 什么是爬虫 3.2 为什么要爬虫 3.3 ...

  4. python的进阶之路_Python 从入门到进阶之路(三)

    在之前的文章我们介绍了一下 Python 中 if while for 的使用,本章我们来看一下 Python 中的变量类型. 在 Python 定义变量时的规则是 变量名 = 变量 ,Python ...

  5. python小白入门第二课-标识符数据类型字符串方法

    一.标识符 定义:标识符就是一个名字,它的主要作用就是作为变量.函数.类.模块以及其他对象的名称.就好像我们人一样,需要起个名字,便于称呼.指代. 1.变量就是标识符的一种 2.标识符:只要是在pyt ...

  6. 收藏 | 10本书,从Python小白进阶数据分析、AI大神

    来源:大数据 本文多资源,建议收藏. 从语言入门,到数据分析.人工智能领域的实战,助你早日成为大神! [ 导读 ]各种版本的语言排行榜里,涨势迅猛的Python总能制造各种话题.在数据分析.AI等当前 ...

  7. Python基础进阶之路(三)之列表

    列表的定义 List(列表) 是 Python 中使用 最频繁 的数据类型,在其他语言中通常叫做 数组 专门用于存储 一串 信息 列表用 [] 定义,数据 之间使用 , 分隔 列表的 索引 从 0 开 ...

  8. python123m与n的数学运算_python小白进阶之路三——循环结构入门练习+Random库练习...

    文章目录 ==资源下载与使用== 输出水仙花数 100以内的素数之和 计算输入数的奇偶数之和与平均数 计算s=a+aa+aaa+-+aaa-aaa的值 有3个数字:1.2.3,能组成多少个互不相同且无 ...

  9. Python - yamail - 进阶之路 - Day08

    python发邮件的教程的,主要用的都是smtplib库,yamail.yamail相当简单. 代码示例: import yamailusername = "920973544@qq.com ...

最新文章

  1. 只能在堆或只能在栈上分配内存的类
  2. 算法竞赛入门经典系列
  3. calendar的使用注意点
  4. VS2013的项目转到VS2010需要修改的
  5. python数据挖掘工程师待遇_数据挖掘工程师岗位的具体职责
  6. Copy-on-Iterate java 代码风格
  7. 信息学奥赛一本通 1844:【06NOIP提高组】金明的预算方案 | 洛谷 P1064 [NOIP2006 提高组] 金明的预算方案
  8. 云小课丨SA基线检查:给云服务来一次全面“体检”
  9. 英文如何区分小括号和花括号
  10. Android 灯光系统开发
  11. python列表所有元素平均值_【全网最简单Python教程】--10.列表元素的索引和返回索引值(Index函数使用)...
  12. js产生两个数字之间的随机数
  13. html+placeholder+兼容问题,placeholder属性做兼容性处理
  14. jquery 多个class操作
  15. 【转】javascript 只允许输入数字总结
  16. As-If-Serial 理解
  17. 软件项目管理期末复习---项目立项
  18. Sqlite字段长度填坑
  19. 如何搞定 K8S 微服务自动化发布系统
  20. C语言指数函数应用pow n次方

热门文章

  1. udp和tcp是服务器响应,HTTP,TCP,UDP的理解和使用
  2. Android热修复技术原理详解(最新最全版本)
  3. 全能HOOK框架 JNI NATIVE JAVA ART DALVIK
  4. Binder源码分析之驱动层(原)
  5. android6.0源码分析之Activity启动过程
  6. Hyperledger Fabric 排序服务核心原理和工作过程
  7. 【GDOI2014模拟】旅行 题解代码
  8. hiveserver2启动不起来_一辆顶杆机电启动很响,不好打火,有时空挡指示灯较暗...
  9. sql去除空值_SQL汇总分析
  10. android udp 收发例子_网络协议之TCP和UDP