基础数据类型
数字int
主要是用于计算,使用方法并不多,主要记住一种即可:
bit_lenght() #当十进制用二进制表示时,最少使用的位数
例如:
v = 12 data = v.bit_length() print(data)
布尔值bool
布尔值只有两种情况:True,False。
True,真,1(非零即真)
False,假,0
字符串str
索引:字符串组成的元素从第一个开始,初始索引为0,以此类推。
例如,‘wuli’这个字符串索引为0的元素是w,索引为1的元素是u
a = 'wuli' print(a[0]) print(a[1]) print(a[2]) print(a[3])
结果输出:
w
u
l
i
切片:通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则是顾头不顾尾)
a = 'ABCDEFGHIJKLMN' print(a[0:3]) print(a[2:5]) print(a[0:]) #默认是到最后 print(a[0:-1]) # -1是列表中最后一个元素的索引,由于是顾头不顾尾,所以最后一个N取不到 print(a[0:7:2]) #从A开始到H每2步长取一个 print(a[7:0:-2]) #反向加步长取值
结果输出:
ABC
CDE
ABCDEFGHIJKLMN
ABCDEFGHIJKLM
ACEG
HFDB
字符串常用方法
1.captalize() #首字母大写
s = 'wulipyThon' s1 = s.capitalize() print(s1)
结果输出:
Wulipython
2.swapcase() #大小写翻转
s = 'wulipyThon' s2 = s.swapcase() print(s2)
结果输出:
WULIPYtHON
3.title() #首字母大写/每个单词首字母大写
s = 'wulipyThon' s3 = s.title() print(s3) s4 ='abc def ghi' print(s4.title())
结果输出:
Wulipython
Abc Def Ghi
4.upper()和lower() 字符串全大写和全小写
s = 'wulipyThon' s5 = s.upper() print(s5) s6 = s.lower() print(s6)
结果输出:
WULIPYTHON
wulipython
5.center() 将字符串居中,空白处填充
s = 'wulipyThon' s7 = s.center(20, '~') print(s7)
结果输出:
~~~~~wulipyThon~~~~~
6. expandtabs() \t前面的补全,默认将一个tab键变成8个空格,如果tab前面的字符长度不足8个,则补全8个,如果tab键前面的字符长度超过8个不足16个则补全16个,以此类推每次补全8个。
s = 'wuli\tpyThon' s8 = s.expandtabs() print(s8)
输出结果:
wuli pyThon #空白处有4个空格
7. count() 数字符串中的元素出现的个数,可切片。
s = 'wulipyThon' s9 = s.count('w', 0, 4) print(s9)
输出结果:
1
8. len() 输出字符串一共有多少个字符
s = 'wulipyThon' s10 = len(s) print(s10)
输出结果:
10
9. startswith() 和 endswith() 判断是否以xxx开头;判断是否以xxx结尾
s = 'wulipyThon' s11 = s.startswith('wuli') s12 = s.startswith('p', 4, 9) s13 = s.endswith('Thon') s14 = s.endswith('Thon', -4, -1) #顾头不顾尾 print(s11, s12, s13, s14) #返回是布尔值
输出结果:
True True True False
10. find() 和 index()
寻找字符串中的元素是否存在。
find()返回找到的元素的索引,如果找不到则返回-1
s = 'wulipyThon' s15 = s.find('li') s16 = s.find('py', 0, 7) s17 = s.find('wang') print(s15) print(s16) print(s17)
输出结果:
2 4 -1
index()返回找到的元素的索引,找不到报错。
s = 'wulipyThon' #s18 = s.index('A') s19 = s.index('li') #print(s18) print(s19)
输出结果:
s18直接报错;
s19输出结果为2,表示索引所在位置
11. strip()、lstrip()和rstrip() strip()默认是删除前后空格
name = '***wuli**' print(name.strip('*')) #将字符串两边的*号删除 print(name.lstrip('*')) #将字符串左边的*号删除 print(name.rstrip('*')) #将字符串右边的*号删除
输出结果:
wuli
wuli**
***wuli
12. split() 以什么分割,最终形成一个列表,此列表不含有这个分割的元素。
s = 'zhangsan;lisi;wangwu;zhaoliu' s20 = s.split(';') s21 = s.split('a') print(s20) print(s21)
输出结果:
['zhangsan', 'lisi', 'wangwu', 'zhaoliu'] ['zh', 'ngs', 'n;lisi;w', 'ngwu;zh', 'oliu']
13. format()的三种用法,格式化输出
第一种:
s = '我叫{},今年{},爱好{},记住我的名字{}'.format('wuli', 18, 'python', 'wuli') print(s)
输出结果:
我叫wuli,今年18,爱好python,记住我的名字wuli
第二种:
name = input('请输入名字:') s = '我叫{0},今年{1},爱好{2},再说一下我叫{0}'.format(name, 18, 'python') print(s)
输出结果:
请输入名字:zhangsan
我叫zhangsan,今年18,爱好python,再说一下我叫zhangsan
第三种:(推荐第三种用法)
name = input('请输入名字:') s = '我叫{name},今年{age},爱好{hobby},再说一下我叫{name}'.format(age = 19, name = name, hobby = 'python') print(s)
输出结果:
请输入名字:李四
我叫李四,今年19,爱好python,再说一下我叫李四
14. replace() 重命名
s = '李白说:天生我才必有用,千金散尽还复来,他的名字叫李白!' print(s.replace('李白', '有个古代诗人', 1)) #如果不写明替换次数,即将所有都替换。
输出结果:
有个古代诗人说:天生我才必有用,千金散尽还复来,他的名字叫李白!
15. is系列
name = 'wuli123' print(name.isalnum()) #字符串由字母或数字组成 print(name.isalpha()) #字符串只有字母组成 print(name.isdigit()) #字符串只有数字组成
输出结果:
True
False
False
for循环
s = '我是中国人,我爱我的祖国!' for i in s: print(i)
输出结果:
我
是
中
国
人
,
我
爱
我
的
祖
国
!
示例:
s = '你是大流氓' if '流氓' in s: print('您的评论有敏感词汇,请修改...')
输出结果:
您的评论有敏感词汇,请修改...