一、数据类型介绍
1.字符串(string)
三种类型:单引号,双引号,三引号
a = 'jam'
b = "JamHsiao"
c = '''JAMHSIAO'''
print(type(a),type(b),type(c))
注意:字符串只能与字符串相加
a = 'Jam'
b = "Hsiao"
print(a+b)
2.整型(int)
a = 30
print(type(a))
3.浮点型(float)
a = 30.0
print(type(a))
4.元组(tuple)里面可以是任意数据类型
t1 = (1,2,[1,2],(1,2,3))
print(type(t1))
5.列表(list)里面同元组一样,可以是任意数据类型
l1 = [1,2,[1,2],(1,2,3)]
print(type(l1))
6.字典(dict)在记录一个人的姓名、身高、年龄等的时候使用,以关键字和数值组合的类型
info = {'name':'萧敬腾', #每行结束必须有',',key和walue之间用':'连接
'age':32,
'high':171
}
print(type(info))
7.集合(set)l里面可以是出列表之外的任意数据类型
s1 = {1,2,'h','a',(1,2,3)}
print(type(info))
8.布尔(bool)
print(type(True))
print(type(False))
二、数据类型详解
1.字符串详解
1.1isupper:判断字符串是否是大写
str1='HELLO,WORLD'
print(str1.isupper())
1.2islower:判断字符串是否是小写
str1='hello,world'
print(str1.islower())
1.3isspace:判断字符串是否是纯空格
str1=' '
print(str1.isspace())
1.4isdigit:判断字符串是否是整型
str1='330'
print(str1.isdigit())
1.5isalnum:判断字符串是否是数字或字母(不能有特殊字符)
str1='jamhsiao0330'
print(str1.isalnum())
1.6isalpha:判断字符串是否是纯字母(不能有特殊字符)
str1='jamhsiao'
print(str1.isalpha())
1.7istitle:判断字符串是否是抬头(标题)
str1='Hello,World'
print(str1.istitle())
1.8title:把字符串变成抬头(标题)
str1='hello,world'
print(str1.title())
1.9upper:把字符串变成大写
str1='hello,world'
print(str1.upper())
1.10lower:把字符串变成小写
str1='HELLO,WORLD'
print(str1.lower())
1.11startswith:判断开头是否是'He'
str1='Hello,World'
print(str1.startswith('He'))
1.12endswith:判断结尾是否是'ld'
str1='Hello,World'
print(str1.endswith('ld'))
1.13index:取字符串的下标,如果没有会报错
str1='Hello,World'
print(str1.index('l'))
print(str1.index('a'))
1.14find:取字符串的下标,如果没有会返回-1
str1='Hello,World'
print(str1.find('l'))
print(str1.find('a'))
1.15count:统计有多少个'l'这样的字符
str1='Hello,World'
print(str1.count('l'))
1.16replace:替换字符'o'为'A',且只替换一次
str1='Hello,World'
print(str1.replace('l','m',2)) #'l'表示原字符,‘m’表示替换字符,‘2’表示替换次数
1.17join:把一个迭代对象(元组,列表,字符串,字典)替换成字符串
str1=''
str2='|'
print(''.join('jamhsiao')) #join前面的str1,str2表示分隔符
print(str2.join('jamhsiao'))
1.18split:把一个字符串从左到右切分成列表
str1='192.168.1.112'
print(str1.split('.',2)) #.表示以.为分隔符,2表示分割2次
1.19rsplit:把一个字符串从右往左切分成列表
str1='192.168.1.112'
print(str1.rsplit('.',2))
1.20strip:去除字符串左右两边的特殊字符
str1="=====hello,world====="
print(str1.strip('='))
1.21rstrip:去除字符串右边的特殊字符
str1="=====hello,world====="
print(str1.rstrip('='))
1.22lstrip:去除字符串左边的特殊字符
str1="=====hello,world====="
print(str1.lstrip('='))
1.23format:格式化
str1='my name is {},my age is {}'
print(str1.format('janhsiao',32))
str2="my name is {2},my age is {0}"
print(str2.format(32,'','jamhsiao'))
str3='''my name is {name},my age is {age}'''
print(str3.format(name='jamhsiao',age=32))
1.24%s,%d,%f格式化
str1='my name is %s,my age is %s'
print(str1 % ('jamhsiao',32)) #%前后有空格,表示分隔符
1.25切片
str1='hello,world'
print(str1[2]) #取下标为2的字符
print(str1[2:5]) #取下标2-4的字符,顾头不顾尾
print(str1[2:]) #不包括2往左的字符都去除
print(str1[:2]) #包括2往右的字符都去除
print(str1[::2]) #每隔两个字符取一次
1.26拼接
str1='jam'
str2='hsiao'
print(str1+str2)
1.27单引号,双引号和三引号的任意切换
str1="it's a cute dog"
str1='''"it's a cute dog"'''
2.列表详解
2.1sort:排序,数据类型要相同,按数字、字母、汉字进行排序
l1=['1','a','c','f','b','萧敬腾','狮子','3','2']
l1.sort()
print(l1)
2.2clear:清除,清空列表里的所有元素
l1=['1','a','c','f','b','萧敬腾','狮子','3','2']
l1.clear()
print(l1)
2.3reverse倒序
l1=['1','a','c','f','b','萧敬腾','狮子','3','2']
l1.reverse()
print(l1)
2.4copy:复制一个列表
l1=['1','a','c','f','b','萧敬腾','狮子','3','2']
print(l1.copy())
2.5insert:在索引或下标为3的地方插入一个元素
l1=['1','a','c','f','b','萧敬腾','狮子','3','2']
l1.insert(3,'JAM')
print(l1)
2.6append:在列表最后添加一个元素
l1=['1','a','c','f','b','萧敬腾','狮子','3','2']
l1.append('JAM')
print(l1)
2.7extend:在列表中添加元组、列表中的单个元素(字典纸循环key)
l1=['萧敬腾','狮子']
l1.extend('JAM')
l1.extend([8,9])
l1.extend(('h','j'))
l1.extend({'name':'teng','age':'32'})
print(l1) #['萧敬腾', '狮子', 'J', 'A', 'M', 8, 9, 'h', 'j', 'name', 'age'
2.8remove:删除指定元素,一次只能删除一个元素
l1=['萧敬腾','狮子']
l1.remove('狮子')
print(l1)
2.9pop:取出指定元素,原元素消失
l1=['萧敬腾','狮子']
l1.pop(1) #以下标或索引取
print(l1)
2.10count:统计列表中'1'的个数
l1=['萧敬腾','狮子','狮子']
print(l1.count('狮子'))
2.11index:获取下标
l1=['jam','jamhsiao','hsiao']
print(l1.index('jam')
2.12切片
l1=['jam','jamhsiao','hsiao','a','b','1']
print(l1[3])
print(l1[1:3])
print(l1[2:])
print(l1[:2])
print(l1[::2]
2.13利用下标改值
l1=['jam','jamhsiao','hsiao','a','b','1']
l1[3]='name'
print(l1)
3.字典详解
3.1pop取出字典元素,原元素消失,通过key取value
info={'name':'萧敬腾',
'age':32,
'high':171,
'weigh':110
}
print(info.pop('name'))
print(info.pop('high'))
3.2clear:清空
info={'name':'萧敬腾',
'age':32,
'high':171,
'weigh':110
}
info.clear()
print(info)
3.3popitem:取出key_value,从最后一个取,一次只能取出一个,以元组的形式输出
info={'name':'萧敬腾',
'age':32,
'high':171,
'weigh':110
}
print(info.popitem())
print(info.popitem())
3.4setdefault:设置默认值,没有的情况下才会被应用,通过key判断,而不是value
info={'name':'萧敬腾',
'age':32,
'high':171,
'weigh':110
}
print(info.setdefault('name','jamhsiao'))
print(info.setdefault('name1','jamhsiao'))
3.5values:列出所有的value
print(info.values())
3.6keys:列出所有的key
print(info.keys())
3.7items:列出所有的key_value,以元组的形式输出
print(info.items())
3.8update:合并,相同的替换,不同的原样输出
info={'name':'萧敬腾',
'age':32,
'high':171,
'weigh':110
}
info1={'name':'jamhsiao',
'age':32,
'gender':'handsome',
'fav':'music'
}
info.update(info1)
print(info)
3.9fromkeys:快速定义一个新的字典
print({}.fromkeys(('name','age','gender','high','weigh'),None))
3.10get:取值,没有输出None,不能赋值
info1={'name':'jamhsiao',
'age':32,
'gender':'handsome',
'fav':'music'
}
print(info1.get('name'))
print(info1.get('hhh')
3.11取值,没有索引,可以赋值,没有会报错
info1={'name':'jamhsiao',
'age':32,
'gender':'handsome',
'fav':'music'
}
print(info1['name'])
info1['name']='萧敬腾'
print(info1)
4.元组详解
大多数元组只能用来读,不用来修改;在相同的元素下,列表占用的资源会比元组大,因为列表的功能大
4.1有下标或索引
t1=('a','b','c','3',4,'3')
print(t1.index('b'))
print(t1.count('3'))
4.2取值
t1=('a','b','c','3',4)
print(t1[3])
print(t1[2:3])
print(t1[:2])
print(t1[2:])
print(t1[::2])
5.集合详解(不常用到)
集合特点:无序,不重复
5.1pop随机取出数据
s1={1,2,3,4,5,(1,2,3)}
print(s1.pop())
5.2intersection:交集
s1={1,2,3,4,5,(1,2,3)}
s2={1,2,3,4,5,6,7,8,9}
print(s1.intersection(s2))
5.3union并集
s1={1,2,3,4,5,(1,2,3)}
s2={1,2,3,4,5,6,7,8,9}
print(s1.union(s2))
5.4difference差集(注意基准)
s1={1,2,3,4,5,(1,2,3)}
s2={1,2,3,4,5,6,7,8,9}
print(s1.difference(s2)) #以s2为基准
print(s2.difference(s1)) #以s1为基准
6.布尔详解
0、None、空格都为假,其余都为真
a = 10
b = 20
print(a>b)
print(a<b)
a = ''
if a:
print('ok')
else:
print('不ok')
a = 0
if a:
print('ok')
else:
print('不ok')
a = None
if a:
print('ok')
else:
print('不ok')
7.转换
7.1str转换成字符串
a = 330
print(str(a))
print(type(str(a)))
7.2int转换成整型
a = 330.30
print(int(a))
print(type(int(a)))
7.3list截取为列表
s1={1,2,3,4,5,6,7} print(list(s1)) print(type(list(s1)))