Python的变量和数据类型(四)

本文为《疯狂Python讲义》的自习阅读笔记


字符串

字符串格式化

Python 可以利用 “%”符号对各种数据进行格式化输出:

price=1000
print("The price of the bike is %s." %price)

它的运行结果为:

The price of the bike is 1000.

这行代码中的 print 函数包含三个部分,第一部分是格式化字符串(它相当于字符串模板),该格式化字符串中包含一个“ %s”占位符,它会被第三部分的变量或表达式的值代替 ; 第二部分固定使用“%”作为分隔符。格式化字符串中的“ %s ”被称为转换说明符,其作用相当于一个占位符 , 它会被后面的变量或表达式的值代替 。“%s” 指定将变量或值使用 str()函数转换为字符串。如果格式化字符串 中 包含多个“ %s ”占位符,第三部分也应该对应地提供多个变量,并且使用圆括号将这些变量括起来 。例如:

user = "Charli"
age = 8
print("%s is a %s years old boy" % (user , age))

运行结果为:

Charli is a 8 years old boy

格式化字符串中的占位符类型码:
在这里插入图片描述下面代码:

num = -28
print("num is: %6i" % num)
print("num is: %6d" % num)
print("num is: %6o" % num)
print("num is: %6x" % num)
print("num is: %6X" % num)
print("num is: %6s" % num)

输出为:

num is:    -28
num is:    -28
num is:    -34
num is:    -1c
num is:    -1C
num is:    -28

常见的格式控制符总结如下:
在这里插入图片描述
下面代码段:

num2 = 30
# 最小宽度为0,左边补0
print("num2 is: %06d" % num2)
# 最小宽度为6,左边补0,总带上符号
print("num2 is: %+06d" % num2)
# 最小宽度为6,右对齐
print("num2 is: %-6d" % num2)
my_value = 3.001415926535
# 最小宽度为8,小数点后保留3位
print("my_value is: %8.3f" % my_value)
# 最小宽度为8,小数点后保留3位,左边补0
print("my_value is: %08.3f" % my_value)
# 最小宽度为8,小数点后保留3位,左边补0,始终带符号
print("my_value is: %+08.3f" % my_value)

输出为:

num is:    -28
num is:    -28
num is:    -34
num is:    -1c
num is:    -1C
num is:    -28
num2 is: 000030
num2 is: +00030
num2 is: 30 

字符串序列方法

Python 字符串直接在方括号中使用 索引即 可获取对应的字符 , 字符串 中 第 一个字符的索引为 0、第二个字符的索引为 1 ,后面各字符依此类推 。 此外, Python 也允许从后面开始计算索引,最后一个字符的索 引为 -1,倒数第二个字符的索引为 -2······依此类推。

s = 'crazyit.org is very good'
# 获取s中索引2处的字符
print(s[2]) # 输出a
# 获取s中从右边开始,索引4处的字符
print(s[-4]) # 输出g
# 获取s中从索引3处到索引5处(不包含)的子串
print(s[3: 5]) # 输出zy
# 获取s中从索引3处到倒数第5个字符的子串
print(s[3: -5]) # 输出zyit.org is very
# 获取s中从倒数第6个字符到倒数第3个字符的子串
print(s[-6: -3]) # 输出y g
# 获取s中从索引5处到结束的子串
print(s[5: ]) # 输出it.org is very good
# 获取s中从倒数第6个字符到结束的子串
print(s[-6: ]) # 输出y good
# 获取s中从开始到索引5处的子串
print(s[: 5]) # 输出crazy
# 获取s中从开始到倒数第6个字符的子串
print(s[: -6]) #输出crazyit.org is ver

该段代码输出为:

a
g
zy
zyit.org is very
y g
it.org is very good
y good
crazy
crazyit.org is ver

Python 字符串 还支持用 in 运算符判断是否包含某个子串:

# 判断s是否包含'very'子串
print('very' in s) # True
print('fkit' in s) # False

代码的运行结果为:

True
False

可以采用len()函数获取字符串的长度:

s='good good study,day day up!!!'
print(s)
print(type(s))
print(len(s))

输出结果为:

good good study,day day up!!!
<class 'str'>
29

还可使用全局内置的 min()和 max()函数获取字符串中最小字符和最大字符:

s='good good study,day day up!!!'
print(max(s)) 
print(min(s)) 

输出结果为:

y
 
  • 23
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值