python基础语法整合(三)

本文探讨了Python中字符串的地址变化规律,介绍了不同字符串构造方式(如单引号、连接操作和内置函数)对内存的影响,并讲解了字符串的驻留特性及索引操作、大小写转换和对齐方法。重点讨论了`sys.intern()`函数在确保字符串唯一性的应用场景。
摘要由CSDN通过智能技术生成
# name: pshdhx
# time:2021/2/10 14:20
# == 判断字符串的值,is 判断字符串的地址
# 当字符串中有%号时,它的地址是不同的
# 符合标志符号的字符串,地址不同
# 字符串只在编辑时驻留,而非运行时
# [-5,256]之间的整数数字,地址相同,超出了,地址不同
a='abc'
b='ab'+'c'
c=''.join(['ab','c'])
print(a,type(a))
print(b,type(b))
print(c,type(c))
print(a is b)
print(a is c) #false
print(b is c) #false

# a和b都是程序运行前组装好的,c是程序运行中组装好的
import sys
a='abc%'
b='abc%'
a=sys.intern(b)
print(a is b)


#字符串查询操作
s='hello hello'
# 查找第一个
print(s.index('lo')) #3
print(s.find('lo')) #3
# 查找最后一个
print(s.rindex('lo')) #9  逆向索引,从-1开始,从右边到左边
print(s.rfind('lo')) #9
#用index如果没有会超出索引,抛出异常,使用find则会-1

# 字符串中的大小写转换
s='hello world'
a=s.upper()
print(a)
# 使用low和super的id不一样
#  swapcase()  大写变小写,小写变大写
# capitalize把第一个字符转为大写,其余字符转为小写
# title把每个单词的第一个字符转为大写,剩余单词转为小写

#字符串内容对齐
s='hello,Python'
print(s.center(20,'*'))
print(s.ljust(20,'*')) #默认是填充空格

# 右对齐,使用0进行填充
print(s.zfill(20))

# 字符串分割,返回值是列表
print(s.split(','))

s='hello|pshdhx|learn|python'
print(s.split(sep="|",maxsplit=2))  #只分割前两个字符串
# rsplit 是从右边开始分割

lst=['hello','python','pshdhx']
print(','.join(lst))

name='pshdhx'
age=24
print('我叫%s,今年%d岁' % (name,age))
print('我叫{0},今年{1}岁'.format(name,age))
print(f'我叫{name},今年{age}岁')
print('%10d'% 99999) #10是宽度
print('%.3f' % 3.1415926)
print('%10.3f' % 3.1415926)


print(3.1415926)
print('{}'.format(3.1415926))
print('{0:.3}'.format(3.1415)) #是一共三位数,而不是三位小数
print('{0:.3f}'.format(3.1415))

print('你好')
print('你好'.encode(encoding='GBK')) #二进制,GBK一个汉字两个字节
print('你好'.encode(encoding='UTF-8')) #二进制,UTF一个汉字两个字节

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值