字符串使用方法

#字符串
##概念:
###1是基础的数据类型
###2 是一个容器型的数据,里面每一个单位都是字符。
###3 特点: 有序,有索引,与列表,元组一样,(字符串元素不能直接进行修改)
##定义:
###1 定义空字符串

string = ""
s = str()

###2 定义非空字符串

string ="123"
s = str(123)
#"""1234""" 这是长字符串也是多行注释

##取值
###1 根据索引取值:字符串名字[索引]
##切片
###1 字符串名[起始位置:结束位置:步长]
1 起始位置:开始取值位置可以取到,是索引
2 结束位置:结束取值位置不能取到,是索引
3 步长: 取值间隔,(2)是隔一个取一个:可以是负值
###2 字符串名[:]
1 起始默认是索引0
2 终止默认是字符串长度
3 步长默认是1
##加法和乘法
###1 使用+号,拼接字符串

s = "123"
a = "456"
q = s + a
print(q)
#结果:123456

###2 使用*号,字符串翻倍

s = "123"
q = s * 3
print(q)
#结果:123123123

##成员判断
###1 使用in,判断字符串是否在父字符串中

str1 = "蜘蛛侠-pate-123"
if "蜘蛛" in str1:
    print("字符串中有蜘蛛")
# 结果:字符串中有蜘蛛

###2 使用not in,判断不在里面

str1 = "蜘蛛侠-pate-123"
if "0" not in str1:
    print("里面没有0")
#结果:里面没有0

##字符串方法
###1 index():获取子字符串的首字符的索引,有多个重复取第一个;可以取到起始位置,取不到终止位置:当找不到时会报错

l = "q, w, e, r, o, o, t, y"
index1 = l.index("e")
print(index1)
#结果:6
index2 = l.index("o", 3, 8)
print(index2)
#结果:报错

###2 find():与index()用法相同查找元素索引,找不到不会报错,会返回-1

a = "a,s,c,n,d,s,n,s,d,l,a,s,c,n,a,s"
i = a.find("a")
print(i)
# 结果:0
q = a.find("1")
print(q)
# 结果:-1

###3 count():计算子字符串在原字符串中出现的个数

e = "年年岁岁花相似,岁岁年年人不同"
print(e.count("年"))
# 结果:4

###4 split():分割字符串,返回一个列表,当不填写参数,默认分割空格,\t,\n 等…可以使用符号或字符进行分割,分割后,用于分割的字符消失,没分割的部分都放入列表中,可以指定分割的最大数

q =' "明眸皓齿""楚楚动人""美轮美奂"'
w = q.split()
print(w)
q1 = q.split("楚", 2)
print(q1)
#结果:['"明眸皓齿""楚楚动人""美轮美奂"']
#[' "明眸皓齿""', '', '动人""美轮美奂"']

###5 strip():默认去掉首位的空格,可以去掉字符串首尾的指定字符

q2 = "                 q,w,b,a,e,w,k,f,a,c,b\n"
q = q2.strip()
print(q)
print(q2.strip()+input())
"""
结果:q,w,b,a,e,w,k,f,a,c,b
键盘输入值:123
q,w,b,a,e,w,k,f,a,c,b123 b后\n换行符被默认去除
"""

###6 replace():替代,第一个参数是旧字符,第二个参数是新的字符

a1 = "飞流直下三千尺,疑是银河落九天"
s1 = a1.replace("九", "33")
print(s1)
#结果:飞流直下三千尺,疑是银河落33天
#注意:字符串的元素不能进行修改

###7 upper():将小写转换成大写

a3 = "a,a,a,a,a"
print(a3.upper())
#结果:A,A,A,A,A

###8 lower():将大写转换为小写

a4 = "AAAA"
print(a4.lower())
#结果:aaaa

###9 join(): 拼接字符串,将序列拼接进指定字符串,这个字符串会将序列的每个元素进行分隔

list3 = ['你', '好', '吗']
s = "+".join(list3)
print(s)
#结果:你+好+吗

##format()方法
###1,拼接字符串

name = "曹操"
say = "挟天子以令诸侯"
print("姓名:{0} 主要事迹:{1}".format(name, say))
print("姓名:{n} 主要事迹:{s}".format(s=say, n=name))
print(f"姓名:{name} 主要事迹:{say}")
"""
结果:
姓名:曹操 主要事迹:挟天子以令诸侯
姓名:曹操 主要事迹:挟天子以令诸侯
姓名:曹操 主要事迹:挟天子以令诸侯
"""

###2.拼接浮点数

q = 1.1
# .4f: 保留浮点数后4位
print(f"补税:{q:.4f}")
#结果:补税:1.1000

###3.带符号 +

print(f"补税:{13.5:+.2f}")
#结果 补税:+13.50

###4.不带小数点,四舍五入

print(f"{6.5689:.0f}")
#结果:7

###5. 拼接整数,10d,占10个位置

age = 79
print(f"年龄: {age:10d}")
#结果:年龄:         79

###6.位数不够进行补位

age = 79
print(f"年龄:{age:0>5d}")
print(f"年龄:{age:0<5d}")
#结果
# 年龄:00079
# 年龄:79000

###7. 百分数格式化

# 百分数格式化
gdp = 0.1516
print(f"国内生产总值:{gdp:2%}")
#结果:国内生产总值:15.160000%

###8,调位置

name = "曹操"
print(f"{name:>10}")
print(f"{name:<10}")
print(f"{name:^10}")
"""
结果:
        曹操
曹操        
    曹操    
"""

##判断str()
###1.isalpha(): 判断是否为纯字母, 是纯字母结果为True,否则为False

s = "sbaASD"
if s.isalpha():
    print("纯字母")
#结果:纯字母

###2.isdigit(): 判断是否为纯数字, 是纯数字结果为True, 否则为False

str2 = "123456"
if str2.isdigit():
    print("纯数字")
#结果:纯数字

###3. isalnum(): 判断字符串是否符号, 没有符号为True, 有符号为False

str3 = "abc123の汉字"
if str3.isalnum():
    print("是")
else:
    print("不是")
#结果:是

###4. isupper(): 判断是否全部字母为大写

str4 = "ABCEFG"
if str4.isupper():
    print("都是大写")
#结果:都是大写

###5. islower(): 判断是否全部字母为小写

str5 = "abcd"
if str5.islower():
    print("都是小写")
#结果:都是小写

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值