整体大纲
关于占位符
tpl
=
"i am %s"
%
"alex"
tpl
=
"i am %s age %d"
%
(
"alex"
,
18
)
tpl
=
"i am %(name)s age %(age)d"
%
{
"name"
:
"alex"
,
"age"
:
18
}
函数:len()
1:作用:返回字符串、列表、字典、元组等长度
2:语法:len(str)
3:参数:
str:要计算的字符串、列表、字典、元组等
4:返回值:字符串、列表、字典、元组等元素的长度
5:实例
5.1、计算字符串的长度:
i = count
len(i) = 5
一、
1,int。 数字:运算。1 ,2,3...
2,bool。判断真假:True, False.
3,str。简单少量的储存数据,并进行相应的操作 name = 'alex',
4,tupe。(1,'alex')
5,list:大量数据,[1,'ses',True,[1,2,3],{'name':'jinxin'}]
6,dict:字典{'name':'jinxin','age':18,'name_list':['张三','李四']}
1、 关于bool 和str 的转换
bool: 真 True 1 , 假 False 0
1 字符串--->bool值 bool(str)
非空字符串转换成bool True
'' 空字符串转换成bool False
例
s = 'sdfa'
s1 = 'a'
s2 = '1'
s3 = ''
print(bool(s))
print(bool(s1))
print(bool(s2))
print(bool(s3))
#bool--->str值
例
a = str(True) # 'True'
a1 = str(2 > 1) # 'True'
print(a1,type(a1))'True'
b = str(False) # 'False'
print(a,type(a))
print(b,type(b))
因为空的是 False
name = ''
if name:
print('输入正确')
else:
print('请输入内容')
2、索引和切片 [起始位置:结束位置:步长 ]
例子
1,索引和切片 [起始位置:结束位置:步长] 字符串也能切片
s1 = 'python全栈8期'
索引从0开始 [索引(下标,index)]
# print(s1[0]) p
# print(s1[3]) h
# print(s1[5]) n
# print(s1[6]) 全
# print(s1[-1]) 期
#切片 顾头不顾腚 注意 1第6个没有 实际到第5个 2 本来就有9个字符 但是10 12 19 到头了 所以默认到最后 3 6:表示 到最后
# print(s1[0:6]) python
# print(s1[6:10])
# print(s1[6:11])
# print(s1[6:]) 全栈8期
# print(s1[1:5])
#pto
取片
[起始位置:结束位置:步长]
#s1 = 'python全栈8期'
# print(s1[0:5:2]) pto
# print(s1[0:7:3]) ph全
li = ['123a4b5c']
l1 = li[0][1:4]
print(l1)
23a
li = ['123a4b5c']
l1 = li[0][0:7:2]
print(l1)
1345
#倒取值:加步长 3::1 和3::-1 区别 3::1 打印 hon全栈8期 3::-1 打印htyp
python全栈8期
# print(s1[3::-1])
# print(s1[5:0:-2]) nhy
# print(s1) #不变
# s2 = s1[0:6]
# print(s2)
python
3 字符串关于大写 小写
ret = 'alexS'
#字符串的使用方法。
#1 capitalize 首字母大写,其他的全小写 str1 = str.capitalize()
print(str,str1) 固定用法
ret = "wangyan"
ret1 = "wangyan".capitalize()
print(ret,ret1)
c
例子 全大写或者全小写
ret = ‘Wangyan’
ret2 = ret.upper()
ret3 = ret.lower()
print(ret2,ret3)
code = 'A'
your_code = input('请输入验证码,不区分大小写')
if your_code == 'A' or your_code == 'a':
print('您输入的正确')
else:print('请重新输入')
不区分大小写的用法
code = 'wangYan'.lower()
your_code = input('输入不区分大小字母').lower()
if code == your_code :
print('答对了')
else :
print('重新输入')
code = 'adeE'.upper()
your_code = input('请输入验证码,不区分大小写').upper()
if your_code == code:
print('您输入的正确')
else:print('请重新输入')
'''
# 大小写翻转 .swapcase()
例子
code = 'wangYan'
code1 = code.swapcase()
print(code,code1)
wangYan WANGyAN
#以特殊符号或者空格隔开,每一个字符串首字母大写 .title()
例子
code = ('wangyan luodan wmutian')
code1 = code.title()
print(code1)
4 字符串居中 并填充 固定格式 字符串.center(数字为字符串中心两边的空格和,'填充内容')
code = 'wangYan'
print(code.center(33,'@')) @@@@@@@@@@@@@wangYan@@@@@@@@@@@@@
5# * 返回bool值 startswith endswith
code = 'wangYan'
code1 = code.startswith('w')
print(code1)
True 只要开头一样 一个或者几个一样 否则False
ret = '123454'
ret2 = ret.endswith('3',0,3)
print(ret2)
True
ret =" alex"
# ret5 = ret.startswith('l',1,3) # 切片
# print(ret5)
True
# ret6 = ret.endswith('S',-2,)
# print(ret6)
False
6# ** count 字母有多少个数 0,6 是范围
例子
ret = 'wangyanluodan'
ret6 = ret.count('a',0,6)
print(ret6)
2个
ret = alex
# ret7 = ret22.count('a')
# ret7 = ret22.count('ale') # 整体与个体
# ret7 = ret22.count('W') # 0
# ret7 = ret22.count('a',0,7) # 切片的count
# print(ret7)
7 tab 键补全
# a2 = "qwaaaaaaaa aa"
# 前面的补全
# 默认将一个tab键变成4个空格,如果tab前面的字符长度不足8个,则补全8个,如果tab键前面的字符长度超过8个不足16个则补全16个
,以此类推每次补全8个。 . len(ret8) 长度是多少
# ret8 = a2.expandtabs()
# print(ret8,len(ret8))
例子
a1="qwaaaaaaaa aa"
a2 = a1.expandtabs()
print(a2,len(a2))
qwaaaaaaaa aa 18
8、find和index 查找
ret = 'aleaxS'
# * find 通过元素找到索引(找到第一个元素),找不到返回-1
# ret9 = ret.find('a')
# # ret9 = ret.find('W',0,5)
# print(ret9)
# #index 和find用法一模一样,找不到元素,就会报错
# ret10 = ret.index('w')
# print(ret10)
a1="qwaaaaaaaa aa"
a2 = a1.find('b')
print(a2) -1
'''
a1="qwaaaaaaaa aa"
a2 = a1.find('a')
print(a2) 2
a1="qwaaaaaaaa aa"
a2 = a1.index('a')
print(a2) 2
a1="qwaaaaaaaa aa"
a2 = a1.index('w')
print(a2) 报错
9 * strip 去除字符串前后的空格及你想去除的元素 '.strip() 去除左边的lstrip 右边的 rstrip
只要有的元素都会从做右边 依次去除元素 字符串 .strip()
ret
# ret11 = ' alex '.strip()
# print(ret11)
'''
name = 'alex'
username = input('请输入你的用户名:').strip()
if username == name :
print('登录成功')
'''
# ret11 = ' alex '.lstrip()
# print(ret11)
# ret11 = ' alex '.rstrip()
# print(ret11)
' alex
#一:
# ret12 = 'asldfkjafa'.strip('a')
# print(ret12)
#二:
# ret13 = 'asldfkjafa'.strip('sa')
# print(ret13)
# ret13 = 'asldfkjafa'.strip('salf')
# print(ret13)
# ret14 = 'asldfkajafa'.strip('saWlf')
# print(ret14) dfkj
10 #split * 将字符串分割成列表 (把字符串分开成多个小字符串组成列表)
# ret15 = 'jinxin alex wusir'
# ret16 = ret15.split()
# print(ret16)
['jinxin', 'alex', 'wusir']
# ret15 = 'jinxin,alex,wusir' split.(',') 逗号字符串格式把整个字符串组成列表
# ret16 = ret15.split(',')
# print(ret16)
['jinxin alex wusir']
# ret15 = 'title tle tlie'
# ret16 = ret15.split('t')
# print(ret16)
把列表变成字符串 ‘’ 出来就是字符串
l1 = ['jinxin', 'alex', 'wusir']
li = ' '.join(l1)
print(li)
jinxin alex wusir
11# * 替换 replace 格式 replace.(‘原来元素’,'改变元素',改变几个数字)
# ret18 = '粉红色打开了粉红色级第三粉红色'
# ret19 = ret18.replace('粉红色','嫩绿色',1)
# print(ret19)
12# 格式化输出 format .format
li = ['alex','eric','rain']
# # 利用下划线将列表的每一个元素拼接成字符串"alex_eric_rain"
info = "{}_{}_{}".format(li[0],li[1],li[2])
print(info)
#第一种:
# ret20 = 'name:{},sex:{},身高:{}'.format('alex','ladyboy',178)
# print(ret20)
ret18 = 'name :{},sex:{},hig:{}'.format("王岩","男",174)
print(ret18)
name :王岩,sex:男,hig:174
#第二种:
# ret20 = 'name:{0},sex:{1},身高:{2},name:{0}'.format('alex','ladyboy',178)
# print(ret20)
ret18 = 'name :{0},sex:{1},hig:{2},name{0}'.format("王岩","男",174)
print(ret18)
name :王岩,sex:男,hig:174,name王岩
#第三种:键值对 注意格式 .format(字符串的引号)
# ret20 = 'name:{name},sex:{sex},身高:{high},name:{name}'
# .format(sex = 'ladyboy',high = 178,name='alex')
# print(ret20)
#13 判断条件
# name='123'
# print(name.isalnum()) #字符串由字母或数字组成
# print(name.isalpha()) #字符串只由字母组成
# print(name.isdigit()) #字符串只由数字组成
not isdight 意思就是 除了字母以外的任何元素
s = 'aelsdskjl'
# s = s[1:]
# print(s)
elsdskjl
14
#for 变量 in 可迭代对象
for in :从里面打印索引列表
例子
s = 'abcdefghijk'
print(len(s))
index = 0
while True :
print(s[index])
index += 1
if len(s) == index :
break'''
s = 'abcdefghijk'
for i in s:
print(i)
方法一
s = 'abcdefghijk'
# print(len(s)) #测量长度
# index = 0
# while True:
# print(s[index])
# index += 1
# if index == len(s):
break
方法二
s = 'abcdefghijk'
# for i in s:
# print(i)
ount = 0
s = 'abcdefghijk'
for i in s:
if i.isdigit():
count += 1
else:
print(666)
print(count)
---------------------
s = 'fs4dkjla123fkj2dsa'
count = 0
for i in s:
if i.isdigit():
count += 1
else:print(666)
print(count)
666
666
666
666
666
666
666
666
666
666
666
666
666
5
# 如:content = input(‘请输入内容:’) # 如用户输入:
# # 5+9或5+ 9或5 + 9,然后进行分割再进行计算。
content = input('请输入内容:')
index = content.index('+')
s1 = int(content[0:index])
s2 = int(content[(index +1):(index +2)])
s = s1 + s2
print(s)