python数据类型及其详解

一、数据类型介绍

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)))

  

猜你喜欢

转载自www.cnblogs.com/daisyyang/p/10726141.html
今日推荐