type函数:用以显示对象数据类型
数字(在python2中区分int类型和long类型;而python3中只有int类型)
字符串str
# 整型 # int(对象, base=进制) #字符转成对应进制数 a = '0011' print(int(a, base=2)) #结果是3,先转换成2进制,在转换成10进制输出 print(int(a, base=8)) #结果是9,先转换成8进制,在转换成10进制输出 print(int(a, base=10)) #结果是11,先转换成10进制,在转换成10进制输出 # bit_length() #显示数值以2进制计算的宽度 a = 11 #二进制为1011长度为4 print(a.bit_length()) #结果为4 #字符串 # capitalize() #除首字母外其他均改为小写 s = 'aLexAlex' t = s.capitalize() print(t) # upper() #均转换成大写字母 print(s.upper()) # lower()均转换成小写 print(s.lower()) # center(长度, 填充字符) #总字符长度,如果够长,则输出整个字符串即可;若原始字符达不到长度,则使用填充符两端填充 print(s.center(7, '*')) # count(要查找的字符串,起始位置,终点位置) print(s.count('le')) # endswith('ex') #以字符串结尾,返回布尔型 print(s.endswith('ex')) # find(待查找字符串,起始位置,终点位置) 返回待查找的字符串在整个字符串中的位置,如果找不到返回-1 print(s.find('le', 4, 7)) # 使用index()也能够查找到位置,但是如果找不到会报错 print(s.index('le')) #格式化 将字符串中的占位符替换为指定的值 #使用变量格式化 # text = 'I am {name}, age {a}' # print(text) # print(text.format(name='lwj', a='20')) # 使用序列格式化 # text = 'I am {0}, age {1}' # print(text) # print(text.format('lwj', 20)) # 使用字典格式化 text = 'I am {name}, age {a}' print(text) print(text.format_map( {'name':'lwj', 'a':'20'} )) # 1.python官方定义中的字母:大家默认为英文字母+汉字即可 # 2.python官方定义中的数字:大家默认为阿拉伯数字+带圈的数字即可 # isalnum() 至少有一个字符且所有字符都是字母数字,那么返回结果就是True;否则含特殊字符,就返回False t = '三a+_@' print(s.isalnum()) # isalpha() 至少有一个字符且所有字符都是字母,那么返回结果就是True;否则,就返回False t = '三a' print(t.isalpha()) # isdigit() 至少有一个字符且所有字符都是数字,那么返回结果就是True;否则,就返回False t = '三a' print(t.isdigit()) # expandtabs(分割的字符串长度) # 吧字符串按照长度分割, 制表符补充空格=长度-已填充的字符数 t = 'name age addr lwj 17 安徽 lwj 17 安徽 lwj 17 安徽 ' print(t.expandtabs(10)) s = 'abc123 de fghijk mn' print(s.expandtabs(5)) #此时abc123超过5后面补充制表符,de不满足补充3空格,fghijk满足直接分割,mn在最后不需要补充 # isidentifier() # 满足数字、字母、下划线,即使是关键词,且不以数字开头即位True t = ['_abc1', 'a_bc1', '1_abc', 'def', 'a+b'] for i in t: print(i.isidentifier()) # 结果分别是T,T,F,T,F # s.isprintable() #如果存在不可显示的字符例如换行、制表符等,则为False s = 'abc cde' print(s.isprintable()) # title() #吧每个单词的首字母大写,变成标题的格式 istitle()则判断是否每个单词的首字母为大写 s = 'I am title' print(s.title()) print(s.istitle()) # 将字符串以自定分隔符分割拼接 s = '今天天气不错' print('_'.join(s)) # 固定长度左右中对齐,以*补齐 s = 'lwj' print(s.center(5, '*')) print(s.ljust(5, '*')) print(s.rjust(5, '*')) # 移除左右的所有空格,可传参strip('a'),则移除左右的字符a s =' AB C12 ' print(s.strip()) print(s.lstrip()) print(s.rstrip()) # 移除指定字符例如 lstrip(abcdef) # 对应位置替换 例如abcde对应12345吧字符中含有的abcde对应替换为12345 m = str.maketrans('abcde','12345') s = 'acdgefh' print(s.translate(m)) #会把字符串s中的abcde对应替换为12345,结果为134g5fh # partition('c') # 以制定分隔符分割字符串,并且吧分割符也当作一列输出,且只分割一次 s ='abcdcbabbcd' print(s.partition('cd')) # split('cd') #以指定字符为分隔符,分割全部字符串,不展示分割符列。可传参,分割几次 print(s.split('c',2)) # swapcase() # 转换大小写 s = 'happy new yeaR' print(s.swapcase()) # 字符串切片 s = 'abcdefg' print(s[2]) #取第三个字符 print(s[-1]) #取最后一个字符 print(s[2:3]) #取第三个字符,2-3不含3 #len()获取字符串、列表的长度 li = [11, 22, 'abcd'] s = 'abcdefg' i = 0 while i < len(s): print(s[i]) i += 1 # for 循环 for i in li: print(i) # 替换 s = 'abcdabcdabcd' print(s.replace('b', 'e')) #range生成范围参数分别是,起始值,结尾值(不含结尾值),步长 n = range(1, 11, 2) for i in n: print(i) #小练习,根据用户输入,逐行输出用户输入的单个字符 text = input('请输入:') for i in range(0, len(text)): print(i+1, text[i])