如下定义的变量a,存储的是数字类型的值
a =100
如下定义的变量b,存储的是字符串类型的值
b ="hello python"
或者
b = 'hello python’
小总结:
双引号或者单引号中的数据,就是字符串
Python 在 sys 模块中提供函数 getsizeof 来计算 Python 对象的大小。
sys.getsizeof(object[, default])
以字节(byte)为单位返回对象大小。
Python len() 方法返回对象(字符、列表、元组等)长度或项目个数。
字符串之前可以通过+来拼接
name ='老王'
position ='码农'
address ='互联网'
print('--------------------------------------------------')
print("姓名:%s"%name)
print("职位:%s"%position)
print("所在地:%s"%address)
print('-----------------------------------------------
之前在学习input的时候,通过它能够完成从键盘获取数据,然后保存到指定的变量中;
注意:在python3中input获取的数据,都以字符串的方式进行保存,即使输入的是数字,那么也是以字符串方式保存
userName = input('请输入用户名:')
password = input('请输入密码:')
print("密码为:%s"%password)
print("用户名为:%s"%userName)
结果:(根据输入的不同结果也不同)
所谓“下标”,就是编号,就好比超市中的存储柜的编号,通过这个编号就能找到相应的存储空间
字符串实际上就是字符的数组,所以也支持下标索引。
如果想取出部分字符,那么可以通过下标的方法,(注意python中下标从 0 开始)
str ='abcdef'
print(str[0])
print(str[1])
print(str[2])
运行结果:
操作切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。
切片的语法:[起始:结束:步长]
步长就是间隔的意思
注意:选取的区间属于左闭右开型,即从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身)。
我们以字符串为例讲解。
如果取出一部分,则可以在中括号[]中,使用:
str ='abcdefg'
print(str[0:3])# 取 下标0~2 的字符
运行结果:
str ='abcdefg'
print(str[3:5])# 取 下标为3、4 的字符
运行结果:
str = 'abcdefg'
print(str[2:])# 取 下标为2开始到最后的字符
运行结果:
str = 'abcdefg'
print(str[1:-1])# 取 下标为1开始 到 最后第2个 之间的字符
运行结果:
str = 'abcdefg'
print(str[1:5:2])
运行结果:
str = 'abcdefg'
print(str[::-1])
运行结果:
如有字符串mystr = 'hello Python,Life is short, I use Python',以下是常见的操作,
需要注意的是,这些方法大多都是返回新的值,对原有字符串不会做修改
检测 str 是否包含在 mystr中,如果是返回开始的索引值,否则返回-1
语法:mystr.find(str, start=0, end=len(mystr))
index()跟find()方法一样,只不过如果str不在 mystr中会报一个异常.
mystr.index(str, start=0, end=len(mystr))
返回 str在start和end之间 在 mystr里面出现的次数
mystr.count(str, start=0, end=len(mystr))
把 mystr 中的 str1 替换成 str2,如果 count 指定,则替换不超过 count 次.
mystr.replace(str1, str2, mystr.count(str1))
以 str 为分隔符切片 mystr,如果 maxsplit有指定值,则仅分隔 maxsplit 个子字符串
mystr.split(str=" ", maxsplit)
把字符串的第一个字符大写
mystr.capitalize()
把字符串的每个单词首字母大写
检查字符串是否是以 obj 开头, 是则返回 True,否则返回 False
mystr.startswith(obj)
注意:区分大小写
检查字符串是否以obj结束,如果是返回True,否则返回 False.
mystr.endswith(obj)
转换 mystr 中所有大写字符为小写
mystr.lower()
转换 mystr 中的小写字母为大写
mystr.upper()
ljust返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串,mystr.ljust(width)
rjust返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串,mystr.rjust(width)
center返回一个原字符串居中,并使用空格填充至长度 width 的新字符串,mystr.center(width)
删除 mystr 左边的空白字符
mystr.lstrip()
删除 mystr 字符串末尾的空白字符
mystr.rstrip()
删除mystr字符串两端的空白字符
mystr.strip()
类似于 find()函数,不过是从右边开始查找.
mystr.rfind(str, start=0,end=len(mystr) )
在find中已经演示过了
类似于 index(),不过是从右边开始.
mystr.rindex( str, start=0,end=len(mystr))
把mystr以str分割成三部分,str前,str和str后
mystr.partition(str)
类似于 partition()函数,不过是从右边开始.
mystr.rpartition(str)
如果 mystr 所有字符都连续的是字母则返回 True,否则返回 False
mystr.isalpha()
[ˈdɪdʒɪt]
如果 mystr 只包含数字则返回 True 否则返回 False.
应用场景:输入数字的时候,判断是纯数字的时候,就可以转成ini
mystr.isdigit()
如果 mystr 所有字符都是字母或数字则返回 True,否则返回 False
mystr.isalnum()
如果 mystr 中只包含空格,则返回 True,否则返回 False.
mystr.isspace()
mystr 中每个字符后面插入str,构造出一个新的字符串
mystr.join(str)