Python基础(三)字符串详解

1. 字符串中的地址问题

1.1 三引号会重新分配空间

str1 = 'abc'
str2 = "abc"
str3 = '''abc
'''
print(str1, str2, str3)
print(id(str1), id(str2), id(str3))
# 输出结果为
# abc abc abc

#6720944 6720944 31420080

1.2 input函数会重新分配空间

str1 = 'abc'
str2 = input() #输入abc
print(id(str1), id(str2))
#两个id不同

2. 运算符

2.1 in和not in运算符

in 可以判断某个字符串A是否在字符串B中,在则返回真反之假

print("s" in "seven")
print("a" not in "seven")

2.2 +、+=、*、%、r运算符

2.3 []运算符和[:]截取运算符

[]运算符就起到索引的作用
而截取运算符用来进行字符串的切片
并且对字符串使用索引或者切片时是不能赋值的
比如"abcd"[1] = 'z’就是非法的

2.3.1 字符串的索引

字符串用索引时 只能当右值不能当左值。
字符串索引有两种表示形式一种是正数一种是负数。
正数索引就是字符串的第一个字符的索引是从0开始,向后依次递增。
负数索引就是字符串的倒数第一个字符的索引是从-1开始,向前依次递减。
例如字符串str = “abcd”
str[0]是’a’ str[-1]是’d’
str[1]是’b’ str[-2]是‘c’
str[2]是‘c’ str[-3] 是’b’
str[3]是’d’ str[-4]是’a’

2.3.2 字符串的切片

[strat : end] 是左闭右开的形式 和range一样
[ : ]是代表整个字符串
[2 : ]是代表从第二个字符串到结束(包含结束)
[ : 5]是代表从第一个字符到第五个字符(不包含第五个字符)

2.3.3 字符串的逆序

[start : end:-1]只要在截取运算符后加个:-1 就是从开始位置向前取值(依次递减)一直取到结束位置
不加:-1的情况默认是从开始位置向后取值依次递增一直到结束位置
若[start : end : 3]则是隔三个输取1次

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值