栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

2021

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

2021

字符串 r语法、相关方法、函数开头 2021-9-27 一、r语法

在字符串的最前面加r或者R 可以让字符串中所有的转义字符的功能消失 每个符号都会变成普通字符

str1 r C:usersnametestdemo.py 
print(str1)
二、字符串格式化
name 小明 
age 18
message xxx今年xx岁 
message name 今年 str(age) 岁 
print(message) # 小明今年18岁 

方法二 格式字符串

message %s今年%d岁 % (name, age)
print(message) # 小明今年18岁 

方法三 f - string

message f {name}今年{age}岁 
print(message) # 小明今年18岁 
1、格式字符串

语法 包含格式占位符字符串%(数据1, 数据2, …)
格式占位符
%s - 字符串占位符
%d - 整数占位符
%f - 浮点数占位符 保留六位小数
%.Nf - 浮点数保留N位小数

1 %s可以给任何类型的数据占位
str1 %sfnejwknf % ( 你好 )
print(str1) # 你好fnejwknf
str1 %sxxx % ([10, 20])
print(str1) # [10, 20]xxx
2 %d可以给任何能转换成整数的数字数据占位
str1 %dxxxx % 23
print(str1) # 23xxxx
3 %f可以给任何能转换成浮点数的数字数据占位
str1 %fxxxx % 3.43
print(str1) # 3.430000xxxx
str1 余额 %.2f % 34325
print(str1) # 余额 34325.00
str1 %s今年%d岁 月薪 %.2f % ( 牛牛 , 24, 10000)
print(str1) # 牛牛今年24岁 月薪 10000.00
2、f-string 1 基本用法

语法 f’{任何有结果的表达式}’

2 加参数

语法 f’{任何有结果的表达式:.Nf}’
参数
.Nf - 控制小数位数
, - 逗号分隔银行金额的格式
.N% - 将数据转换成百分比 比值保留N位小数
X N - 将数据转换成长度为N的字符串 不够在前面用X对应的字符来填充
X N - 将数据转换成长度为N的字符串 不够在后面用X对应的字符来填充

1、基本用法
str1 f 你好 
print(str1) # 你好
str1 f 姓名 {name}t年龄 {age} 
print(str1) # 姓名 小明 年龄 18
2、参数

a、.Nf

money 2445
str1 f 金额 {money:.2f} 
print(str1) # 金额 2445.00

b、,

money 4355352
str1 f 余额 {money:,} 
print(str1) # 余额 4,355,352

c、%

rate 0.5
str1 f 市场占有率 {rate:.2%} 
print(str1) # 市场占有率 50.00%

d、X N X N

X - 填充字符
X - 目标长度

num 5
str1 f Python2106{num:0 3} 
print(str1)
str1 f Python2106{num:好 2} 
print(str1)
三、字符串相关方法 1、center、rjust、ljust、zfill

字符串.center(长度,填充字符)
字符串.rjust(长度,填充字符)
字符串.ljust(长度,填充字符)
字符串.zfill(长度) 字符串.rjust(长度, ‘0’)

print( abc .center(7, s )) # ssabcss
print( abc .rjust(7, s )) # ssssabc
print( abc .ljust(7, s )) # abcssss
print( abc .zfill(7)) # 0000abc
2、count

字符串1.count(字符串2) - 统计字符串1中字符串2出现的次数
字符串1.count(字符串2, 开始下标, 结束下标) - 在开始下标到结束下标 取不到 开区间 对应的范围内统计的字符串2出现的次数

str1 abcdefjabdghal 
print(str1.count( a )) # 3
print(str1.count( a , 0, 9)) # 2
3、find、index、rfind、rindex

字符串1.find(字符串2) - 获取字符串1中字符串2第一次出现的位置 返回0开始的下标值 如果字符串2不存在返回-1
字符串1.index(字符串2) - 获取字符串1中字符串2第一次出现的位置 返回0开始的下标值 如果字符串2不存在报错
字符串1.find

str1 abcdefjabdghal 
print(str1.find( g )) # 10
print(str1.index( g )) # 10
print(str1.find( g1 )) # -1
print(str1.index( g1 )) # 报错
print(str1.find( g , 0, 8)) # -1
print(str1.index( g , 0, 11)) # # 10
print(str1.rfind( g )) # 10
print(str1.rindex( g )) # 10
4、isdigit、isnumeric

字符串.isdigit() - 判断是否是纯数字字符串 数字指0~9的数字字符
字符串.isnumeric() - 判断是否是纯数字字符串 数字指具有数字意义的字符

print( 3141515 .isdigit()) # True
print( 1241415 .isnumeric()) # True
print( 3141515一 .isdigit()) # False
print( 3141515一百 .isnumeric()) # True
5、islower、isupper

字符串1.islower() - 判断字符串是否是纯小写字母字符串
字符.islower() - 判断是否是小写字母
字符串1.isupper() - 判断字符串是否是纯大写字母字符串
字符.isupper() - 判断是否是大写字母

print( safaf .islower()) # True
print( FSSFA .isupper()) # True
6、join

字符串.join(序列) - 将序列中的元素用指定的字符串拼接成一个新的字符串
注意 序列中的元素必须是字符串

result .join( abc )
print(result) # a b c
result .join([ 小明 , 牛牛 , 瓦塔 ])
print(result) # 小明 牛牛 瓦塔
result .join([2, 4]) # 报错

练习、将列表中的元素合并成一个字符串

[ abc , 100, 12.5, True, hello ] - abc10012.5Truehello 
list1 [ abc , 100, 12.5, True, hello ]
result .join((str(x) for x in list1))
print(result)

练习2 已经一个列表保存多个学生的分数 提取所有学生的姓名 以一个字符串的形式返回
[{‘name’:‘张三’, ‘age’: 18}, {‘name’:‘小明’, ‘age’: 20}, {‘name’:‘小花’, ‘age’: 30}] - ‘张三,小明,小花’

students [{ name : 张三 , age : 18}, { name : 小明 , age : 20}, { name : 小花 , age : 30}]
result , .join(x[ name ] for x in students)
print(result)
7、strip、lstrip、rtrip

字符串.strip() - 去掉字符串两端的空白字符
字符串.lstrip() - 去掉字符串前面的空白
字符串.rstrip() - 去掉字符串后面的空白

str1 tabc 123 n 
result str1.strip()
print( , result, , sep ) # abc 123 
result str1.lstrip()
print( , result, , sep ) # abc 123
result str1.rstrip()
print( , result, , sep ) # abc 123 
8、replace

字符串1.replace(字符串2, 字符串3) - 将字符串1中所有的字符串2替换成字符串3
字符串1.replace(字符串2, 字符串3, N) - 替换前N个

str1 abcdefjabdghal 
result str1.replace( a , u )
print(result) # ubcdefjubdghul
result str1.replace( a , u ,2)
print(result) # ubcdefjubdghal
9、maketrans、translate

str.maketrans(字符串1, 字符串2) - 创建一张字符串1和字符串2的字符对应表
字符串.translate(表)

table str.maketrans( abc , 你好吗 )
str1 abcdefjabdghal 
result str1.translate(table)
print(result) # 你好吗defj你好dgh你l

练习 将字符串中所有的阿拉伯数字都替换成对应的中文数字

 123木头人, 88 - 一二三木头人, 八八 
table str.maketrans( 0123456789 , 零一二三四五六七八九 )
str1 123木头人, 88 
result str1.translate(table)
print(result)
10、split

字符串1.split(字符串2) - 将字符串1中所有的字符串2作为切割点对字符串进行切割

str1 abcdefjabdghal 
result str1.split( a )
print(result) # [ , bcdefj , bdgh , l ]

注意 如果切割点在最前面或者最后或者出现连续的切割点 结果会出现空串

四、认识函数和定义函数 1、认识函数 1 概念 函数就是对实现某以特定功能的代码的封装 2 函数的分类

a、系统函数 系统造好的机器 - 有Python创建好的函数 例如 print、input、type、max …
b、自定义函数 自己造机器 - 由程序员自己创建的函数

2、定义函数 创建函数

语法
def 函数名(形参列表):
函数说明文档
函数体
说明
a、def - 关键字 固定写法
b、函数名 - 由程序员自己命名
要求 是标识符 不能是关键字
规范 见名知义 看到函数名大概指定这个函数的功能是什么
所有字母都小写 多个单词之间用下划线隔开
不能使用系统函数名、类别、模块名。
c、() - 固定写法
d、形参列表 - 以’变量名1, 变量名2, 变量名3,… 格式存在 这的每个变量就是一个形参 如果不需要形参 括号里什么都不用写
形参是用来将函数外部的数据传递到函数内部。 可以理解成连接函数外部和函数内部的通道
需不需要形参就看实现函数的功能需不需要额外的数据
e、: - 固定写法
f、函数说明文档 - 本质就是文档注释
g、函数体 - 和def保持一个缩进的一条或者多条语句
函数体就是实现函数功能的代码

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/266939.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号