python3学习之路 -- 3.2)str

'''

---------------------------------字符串---------------------------------
1. 字符串的格式转化
%s 字符串占位
%d 占位整数
%f 占位小数
eg:
name = input('地点:')
year = int(input('年份:'))
s1 = "我来自%s,%d年了!!" % (name,year)
s2 = "我来自{},{}年了!".format(name,year)
s3 = f"我来自{name},{year}年了!!"   f-string
s4 = "我来自%s" % name  #有一个的时候

2. 字符串索引和切片
#2.1 索引:按照位置提取元素
s = "我来自上海"
#可以用索引的方式提取某一个字符
print(s[2])
print(s[-1])  # - 表示倒数

#2.2 切片:从一个字符串中提取一部分内容
#语法:s[start:end] 从start开始,到end,不包含end
s = "我来自上海,你呢?"
print(s[2:6]) #从索引2开始进行切片,切到6结束
print(s[:6])  #如果start是开头进行切,可以省略
print(s[2:]) #从2开始切到最后
print(s[:]) #表示从头到尾
print(s[-4:-1]) #目前还是从左到右切  打印:,你呢
print(s[::-1])  #可以给切片加步长来控制切片方向  打印:?呢你,海上自来我

#3. 字符串的常规操作
#字符串的操作一般不会对原字符串产生影响,一般是返回一个新的字符串
#3.1 字符串大小转化  --->  upper()
s = "python"
s1 = s.capitalize()
print(s)  #打印 python
print(s1)  #打印 Python

s = "I have a drEam!"
s1 = s.title()  #单词的首字母大写
s2 = s.lower()  #变成小写字母
s3 = s.upper() #将所有字母变成大写字母
print(s1)  #打印 I Have A Dream!
print(s2)

#3.2 替换和切割
#strip() 去掉字符串左右两端的空白符(空格,\t,\n)
#replace(old, new) #字符串替换
#split(用什么切割) 字符串切割
s = "  你好,  我, 来自,SH  "
s1 = s.strip()
s2 = s.replace(" ","") #去掉所有空格
print(s1)
print(s2)
s3 = s.split(",") #切割后的结果保存在列表中
print(s3)  #打印 ['  你好', '  我', ' 来自', 'SH  ']

#3.3 查找和判断
#查找
s = "我来自上海!"
s1 = s.find("上海")  #返回 -1 表示没有
print(s1)  #打印 3
s2 = s.index("上海")  #没有就报错
print("上海aa" in s)  #in可以做条件上的判断,返回True表示存在,返回False表示不存在
print("上海aa" not in s)  #判断不存在
for c in s:  #in作为for循环
    print(c)

#判断
name = input("请输入你的名字:")
if name.startswith("张"): #判断字符串是否以张开头
    print("你姓张")
else:
    print("不姓张")

#判断字符串是否为整数isdigit() 小数isdecimal()
if name.isdecimal():
    print("是数字")

#3.4 补充 len join
s = "hello"
print(len(s)) #legth 长度
#join
s = "python_java_go_script"
s1 = s.split("_")
print(s1)  #打印 ['python', 'java', 'go', 'script']
lst = ['python', 'java', 'go', 'script']
s2 = "-".join(lst)  #join 做拼接,和split相反
print(s2)  #打印 python-java-go-script

总结:
1. f"{变量}"  格式化一个字符串
2. 索引和切片:
    索引:从0开始的 []
    切片:s[start:end:step],end位置的数据永远拿不到
3. 相关操作:
字符串操作对原字符串不发生改变
1. upper() 在需要忽略大小写的时候
2. strip() 可以去掉字符串左右两端的空白
3. replace() 字符串替换
4. split() 字符串切割
5. join() 拼接一个列表中的内容成为新字符串
6. startswith() 判断字符串是否以...开头
7. len() 字符串长度(内置函数)

字符串的循环和遍历
for c in s:
    print(c) 字符串中的每一个字符

关于in:
1. 判断...是否在...中出现了
2. for循环

'''

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值