数据类型&字符串得索引及切片
一:数据类型
1):int 1,2,3用于计算
2):bool ture false 用于判断,也可做为if的条件
3):str 用引号引起来的都是str
存储少量数据,进行操作
4):list 储存大量数据。[1,2,3,‘达人’,[1,2,3,90]]
5):元组 (1,2,3,‘第三方’)元组又叫只读列表,不能修改。
6):字典:dict,大量关系型的数据写在字典里
字典{‘name’:’li’,’age’=’12’}
字典{‘li’:[身高,体重,‘张三’:’200,80,100’]
7):集合
二:数据类型之间的相互转化
1)int i=5 则i.bit_lenght()为i转换成二进制最小的位数
1 int———>str 2 3 i = 1 s = str(i)
1 str ———>int 条件:只能是数字 2 3 s = ‘123’ i = int(s)
1 int----->bool 非零为true 零为false 2 3 i = 3 b = bool(i) print(b) 结果为true 4 5 bool----->int true为1 false为0
注:while True:
Pass
While 1:
Pass
第二种比第一种效率高,英文第二种的转化
str----->bool(空字符串为false,非空为true) S-””----->false S - “0”---->true
三:字符串的索引与切片
s = 'ADCVXEBG'
1)索引
s1 = s[0] print(s1) s2 = s[3] print(s2)
2)取最后一位s[-1] 取倒数第二位s[-2]
s3 = s[-1] print(s3)
3)ADCV 切片:顾头不顾尾
s4 = s[0:4] print(s4)
4)取A到G全部取出来
#方法一: s5 = s[0:] print(s5) #方法二: s6 = s[:] print(s6)
5)跳着取 s[首:尾:步长]
s7 = s[0:5:2] print(s7)
6)倒着取DCBA,,,,,倒着取DB
s8 = s[3::-1] print(s8) s8 = s[3::-1] print(s8)
7)倒着取完
#方法一: s10 = s[::-1] print(s10) #方法二: s11 = s[-1::-1] print(s11)
四:str常用操作方法
s = 'abcDEfg'
1)首字母大写
s1 = s.capitalize() print(s1)
2)全部大写/小写
s2 = s.upper() print(s2) s3 = s.lower() print(s3)
用处(验证码)
s_str = "acEQ" you_input = input('请输入验证码:(不区分大小写)') if s_str.upper() == you_input.upper(): print('输入成功') else: print('请重新输入')
3)大小写反转
s4 = s.swapcase() print(s4)
s = 'abcd guo lili'
4)每个隔开(特殊字符或者数字)的单词首字母大写
s5 = s.title() print(s5)
5)居中,空白填充
s6 = s.center(20,'%') print(s6)
6)字符串的长度 len()
7)判断字符串以什么为开头
s7 = s.startswith('ab') print(s7) s8 = s.startswith('c',2,5) print(s8) 例如: if s7: pass elif s7 = s.startwith('al') pass print(s7)
8)找字符串中是否有某个元素,find通过元素找索引,找不到返回-1
s9 = s.find('g') print(s9,type(s9))#s9的类型是整型int
9)index通过元素找索引,找不到会报错
s10 = s.index('k') print(s10)
10)去空格,默认删除前后空格
s = ' abcd guo lili ' s11 = s.strip() print(s11)
11)删除前后多余的符号 (rstrip从右边删除,左边不删 lstrip 从左边删,右边不删除)
s = '@abcd guo lili*' s12 = s.strip('*@') print(s11)
12)count 记数
s13 = s.count('l') print(s13)
13) split 拆分
l = s.split(' ')#以空格为拆分点,也可以: 各种字符 print(l)
14)替换
s = '物联网射频识别技术与应用应用' s14 = s.replace('应用','实例',1)#默认全部替换,如果想替换个别,则在后面加上个数, print(s14)
五:格式化输出,format的三种玩法
s = '我叫{},今年{},爱好{},在说一下我叫{}'.format('莉',18,'吃','莉') print(s) s = '我叫{0},今年{1},爱好{2},在说一下我叫{0}'.format('莉',18,'吃') print(s) s = '我叫{name},今年{age},爱好{hobby},在说一下我叫{name}'.format(hobby='吃',name='莉',age=18) print(s) name = input("请输入姓名:") s = '我叫{},今年{},爱好{},在说一下我叫{}'.format(name,18,'吃',name) print(s)
六:for循环
s = 'hkgiyf' for i in s: print(i)