一.变量
声明变量:
name = 'Tom' #name是变量名,‘Tom’是变量对象 age = 20 ##Python中,变量本身没有数据类型。之所以说,‘有数据类型’,因为 取决变量的对象(Python会自动甄别输入的对象 是什么类型)
作用:
1.当是不确定的内容
2.当一串内容特别长的时候
3.当发生重用的时候
二.数据类型
python数据类型:
1.数字
2.str 字符串
3.list 列表
4.tuple 元组
5.dict 字典
6.set 集合
数据类型介绍:
1.数字
分为:整型,长整型,布尔,浮点,复数
2.str 字符串
2.1索引,切片
s = 'hello,world!!!' print(s[1]) print(s[:5]) #结果 e hello
2.1.strip,rstrip,lstrip
去除空格,去除字符串(首尾)的字母
s = ' hello ' #去空格 re = s.strip() print(re) s = ' hello ' re = s.strip() re2 = re.lstrip('h') #去除首字母 print(re2)
2.2.startswith,endswith
判断首尾字母,返回 bool值
s = 'pagndi' print(s.startswith('p')) print(s.endswith('i')) #输出结果 True True
2.3.replace
替换
s = 'hello alex,age is 18,myname is alex' re = s.replace('alex','egon') re1 = s.replace('alex','egon',1) print(re) print(re1) ##输出结果 hello egon,age is 18,myname is egon hello egon,age is 18,myname is alex #只替换第一个
2.4.format,%
格式化
name = 'Tom' age = 18 print('hello {},age is {}'.format(name,age)) print('hello %s,age is %s'%(name,age))
2.5.split
分割
s = 'hello Tom,age is 18,myname is Tom' l = s.split(' ') #以空格做分割 print(l) l2 = s.split(',') #以 逗号 做分割 print(l2) ##输出结果 ['hello', 'Tom,age', 'is', '18,myname', 'is', 'Tom'] ['hello Tom', 'age is 18', 'myname is Tom']
2.6.join
拼接
s = 'hello Tom,age is 18,myname is Tom' l = s.split(' ') #以空格做分割 print(l) t = tuple(l) s2 = ' '.join(t) #字符串拼接 print(s2) ##输出结果 ['hello', 'Tom,age', 'is', '18,myname', 'is', 'Tom'] hello Tom,age is 18,myname is Tom
2. 7.count
计数
s = 'hello world' print(s.count('o')) #2 s = '123hello3333' print(s.count('3')) #5
2.8.center
返回一个指定的宽度 width 居中的字符串,如果 width 小于字符串宽度直接返回字符串,否则使用 fillchar 去填充。
s = 'hello' s1 = 'K K' print(s.center(10,'*')) print(s1.center(3,'$')) #结果 **hello*** K K
2.9.find
find() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否则返回-1。
语法:str.find(str, beg=0, end=len(string))
str1 = "hell world" str2 = "r" print (str1.find(str2)) print (str1.find(str2, 7)) print (str1.find(str2, 10)) #结果 7 7 -1
2.10.index
ndex() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。
str1 = "hell world" str2 = "r" print (str1.index(str2)) print (str1.index(str2, 7)) print (str1.index(str2, 10)) #会报错 #结果 7 7 ValueError: substring not found
2.11.salnum
检测字符串是否由 字母和数字 组成。
返回值:如果 string 至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False
s = "hello123" # 字符串没有空格 s1 = "hello 123" #有空格 s2 = "hello-world" #有特殊符号 print(s.isalnum()) print(s1.isalnum()) print(s1.isalnum()) #结果 rue False False
2.12.isalpha
检测字符串是否只由字母组成。
s = 'hello' s1 = 'hello--world' print(s.isalpha()) print(s1.isalpha()) #结果 True False
2.13.isdigit
检测字符串是否只由数字组成
s = '123' s1 = 'hello' print(s.isdigit()) print(s1.isdigit()) #结果 True False
2.14.islower
检测字符串是否由小写字母组成
s = 'hello' s1 = 'HELLO world' print(s.islower()) print(s1.islower()) # #结果 True False
2.15.isupper
检测字符串中所有的字母是否都为大写
s = 'HELLO' s1 = 'HELLO world' print(s.isupper()) print(s1.isupper()) # #结果 True False
2. 16.maketrans
用于创建字符映射的转换表,对于接受两个参数的最简单的调用方式,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标。
注:两个字符串的长度必须相同,为一一对应的关系
n = "acegi" m = "12345" t = str.maketrans(n, m) str = "abcdefghij" print (str.translate(t)) #结果 1b2d3f4h5j
2.17.lower(),upper()
转换字符串中所有字符为 大小 写。
s = 'HELLO' S1 = 'hello' print(s.lower()) #转小写 print(s.upper()) #转大写 #结果 hello HELLO
2.18.isdecimal
检查字符串是否只包含十进制字符。这种方法只存在于unicode对象。
注意:定义一个十进制字符串,只需要在字符串前添加 'u' 前缀即可
s = "hello2017" s1 = "23443434" print(s.isdecimal()) print(s1.isdecimal()) #结果 False True
3.list 列表
3.1 append,insert,extent
append
方法用于在列表末尾添加新的对象
l = [1,2,3,'a','b','c'] n = l.append(333) print(n,l) #结果 None [1, 2, 3, 'a', 'b', 'c', 333]
insert
函数用于将指定对象插入列表的指定位置
l = [1,2,3,'a','b','c'] l.insert(2,'AAA') print(l) #结果 [1, 2, 'AAA', 3, 'a', 'b', 'c']
extend
用新列表扩展原来的列表
l = [1,2,3,'a','b','c'] #示范一 # l.extend([5,6]) # print(l) # # #结果 # [1, 2, 3, 'a', 'b', 'c', 5, 6] #5,6的位置 #示范二 l2 = [5,6] l2.extend(l) print(l2) #结果 [5, 6, 1, 2, 3, 'a', 'b', 'c'] #5,6的位置
3.2 pop
函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
l = [1,2,3,'a','b','c'] n = l.pop() print(n) #输出删除的 值 print(l) #结果 c [1, 2, 3, 'a', 'b'] # c 已删除
3.3 remove
函数用于移除列表中某个值的第一个值
l = [1,2,3,'a','b','c',3,3] n = l.remove(3) print(n,l) #结果 None [1, 2, 'a', 'b', 'c', 3, 3] #只会删除 第一个 3
3.4 clear
函数用于清空列表
l = [1,2,3,'a','b','c',3,3] l.clear() print('清空后的列表为:',l) #结果 清空后的列表为: [] # del 清空列表 del l[:] print('使用del 的结果:',l) #结果 使用del 的结果: []
3.5 count
统计某一元素出现次数
l = [1,2,'a','b','c','a','a'] n = l.count('a') print(n) # 3
3.6 index
通过元素,找出其的 索引位置
l = [1,2,'a','b','c'] n = l.index('b') print(n) #索引位置: 3
#拓展
通过索引位置,找出 中间的元素
#例一 l = [1,2,'a','b','c',] if len(l) % 2 != 0: print(l[len(l)//2]) else: print(l[len(l)//2 - 1],l[len(l)//2]) #结果 a #例二 l = [1,2,'a','b','c','KKK'] if len(l) % 2 != 0: print(l[len(l)//2]) else: print(l[len(l)//2 - 1],l[len(l)//2]) #结果 a b
range
#例一 r = range(100) print(list(r)) #例二 r = range(50,100) print(list(r)) #例二 r = range(0,101,2) print(list(r))
4.tuple 元组
元组的元素不能修改
4.1 索引,切片(查)
t = (1,2,3,'a','b') print(t[2]) print(t[3:5]) #结果 3 ('a', 'b')
t = (1,2,3,'a','b') print(t.index('a')) #结果 3
4.2len,count
t = (1,2,3,'a','b',3,'c') print(len(t)) print(t.count(3)) #结果 7 2
4.3元组合并
t = (1,2,3) t1 = ('a','b','c') n_t = t+t1 print(n_t) #结果 (1, 2, 3, 'a', 'b', 'c')
4.4 max,min,sum
t = (1,20,2) print(max(t)) print(min(t)) print(sum(t)) #结果 20 1 23
5.字典
5.1 增
d = {'name':'Tom','age':18,'place':'北京'} d['hobby'] = '打篮球' print(d) #结果 {'name': 'Tom', 'age': 18, 'place': '北京', 'hobby': '打篮球'}
5.2删
d = {'name':'Tom','age':18,'place':'北京'} di = d.pop('place') print(di) print(d) #结果 北京 {'name': 'Tom', 'age': 18}
5.3改
d = {'name':'Tom','age':18,'place':'北京'} d['place'] = '上海' print(d) #结果 {'name': 'Tom', 'age': 18, 'place': '上海'}
5.4查
d = {'name':'Tom','age':18,'place':'北京'} print(d['age']) print(d['place']) #结果 18 北京
5.5 update
将一个字典更新至另一个字典中
d = {'name':'Tom','age':18,'place':'北京'} di = {'hobby':'打篮球','professional':'IT'} d.update(di) print(d) #结果 {'name': 'Tom', 'age': 18, 'place': '北京', 'hobby': '打篮球', 'professional': 'IT'}
#范例
d = {' name':'Tom','age':18,'place':'北京','hobby':'打篮球'} 'name' for k in d: if k.strip() == 'name': print(d[k]) #结果 Tom
set集合:
s = {1,2} # s.add(33) s.update('asd') # 集合pop随机移除某个元素并且获取那个参数,集合pop没有参数 # s.pop() # 移除元素 如果元素不存在,不会报错 remove 如果元素不存在,会报错 # s.remove(1) s.discard(2) print(s)