python数据类型

目录:

  1. 数字类型
  2. 字符串
  3. 元组
  4. 列表
  5. 字典
  6. 集合
  7. 布尔

1、数字类型:

数据类型是不允许改变的,如果改变数字数据类型的值,将重新分配内存空间

整型(int):

>>> age = 18
>>> type(age) # 查看数据类型
<class 'int'>

可以通过 del 语句删除单个或多个对象的引用:

del var1
del var1, var2 ...

浮点型(float):

>>> salary = 6666.66
>>> type(salary)
<class 'float'>

复数型(complex):

>>> x = 1 + 3.14j
>>> type(x)
<class 'complex'>

2、字符串:

#strip 去掉左右两边的空格
name=' Allen '
print(name.strip())
print(name.lstrip())
print(name.rstrip())
#lower,upper 大小写转换
name='Allen'
print(name.lower())
print(name.upper())

#startswith,endswith #判断字符串的开头和结尾
name='Allen'
print(name.endswith('en'))
print(name.startswith('Al'))

#format字符串格式化
res='{} {}'.format('Allen',20)
res='{1} {0}'.format('Allen',20)
res='{name} {age}'.format(,name='Allen',age=20)

#split 切分
name='root:x:0:0::/root:/bin/bash'
print(name.split(':')) #默认分隔符为空格
print('c:/a/b/c/d.txt'.split('/',1)) #只想拿到顶级目录
print('a|b|c'.rsplit('|',1)) #从右开始切分

#join
print(' '.join(['Allen','hello','world'])) #可迭代对象必须都是字符串

#replace 替换
name='my name is allen'
print(name.replace('allen','Allen'))

#isdigit:可以判断bytes和unicode类型,是最常用的用于于判断字符是否为"数字"的方法
print('1999'.isdigit())
要掌握的操作
#find,rfind,index,rindex,count
name='my name is allen'
print(name.find('o',1,3)) #顾头不顾尾,找不到则返回-1不会报错,找到了则显示索引
#print(name.index('e',2,4)) #同上,但是找不到会报错
print(name.count('e',1,3)) #顾头不顾尾,如果不指定范围则查找所有

#center,ljust,rjust,zfill
name='allen'
print(name.center(30,'-'))
print(name.ljust(30,'*'))
print(name.rjust(30,'*'))
print(name.zfill(50))     #用0填充

#expandtabs
name='allen\thello'
print(name)
print(name.expandtabs(1))

#captalize,swapcase,title
print(name.capitalize()) #首字母大写
print(name.swapcase())   #大小写翻转
msg='my name is allen'
print(msg.title())       #每个单词的首字母大写

#is数字系列
#在python3中
num1=b'4' #bytes
num2=u'4' #unicode,python3中无需加u就是unicode
num3='' #中文数字
num4='' #罗马数字

#isdigt:bytes,unicode
print(num1.isdigit()) #True
print(num2.isdigit()) #True
print(num3.isdigit()) #False
print(num4.isdigit()) #False

#isdecimal:uncicode
#bytes类型无isdecimal方法
print(num2.isdecimal()) #True
print(num3.isdecimal()) #False
print(num4.isdecimal()) #False

#isnumberic:unicode,中文数字,罗马数字
#bytes类型无isnumberic方法
print(num2.isnumeric()) #True
print(num3.isnumeric()) #True
print(num4.isnumeric()) #True

#三者不能判断浮点数
num5='4.3'
print(num5.isdigit())
print(num5.isdecimal())
print(num5.isnumeric())
#总结:
#    最常用的是isdigit,可以判断bytes和unicode类型,这也是最常见的数字应用场景
#    如果要判断中文数字或罗马数字,则需要用到isnumeric

#is其他
name='allen1999'
print(name.isalnum()) #字符串由字母或数字组成
print(name.isalpha()) #字符串只由字母组成

print(name.isidentifier())
print(name.islower())
print(name.isupper())
print(name.isspace())
print(name.istitle())
需要了解的操作

 

3、元组:

age = (11,22,33,44,55)
print(age[0])  #按索引取值
print(age[0:4]) #切片
print(age[-3:])  #切片
print(len(age)) #长度
print(11 in age) #成员运算
print(66 not in age) #成员运算

 

4、列表:

names = ['aa', 'bb', 'cc', 'dd', 'ee']
#删除
print(names.pop(0))
names.remove('cc')
print(names)
#添加
names.insert(1, 'ff')
print(names)
names.append('gg')
print(names)
#取值、切片
print(names[0])
print(names[0:3])
print(names[0:5: 2])
print(names[-1::-1])
#成员运算
print('cc' in names)
print('cc' not in names)
print(len(names)) #长度
#排序
print(names.sort())
print(names.reverse())

 

5、字典:

存/取
info={'name':'allen','age':20,'sex':'M'}
print(info['job'])            # 找不到key则报错
print(info.get('job'))
print(info.get('job',None)) # get方法找不到key则不报错,可以自定义返回值
info['job'] = 'IT'
print(info)

print(info.keys())     # 获取所有Key
print(info.values()) # 获取所有values
print(info.items())  # 获取键值对(元组)

删除:
info={'name':'allen','age':20,'sex':'M'}
print(info.pop('job', None)) # key存在则弹出值,不存在则返回默认值,如果没有默认值则报错
print(info)
print(info.popitem())    # 随机删除
print(info)
del info['name']

print(len(info))        # 获取字典长度
print('name' in info)   # 成员运算
print('name' not in info) # 成员运算

更新:
info={'name':'allen','age':20,'sex':'M'}
info.update({'job': 'IT', 'age': 18}) # 如果key存在则覆盖值,如果不存在则添加key,value
print(info_dic)

info.setdefault('job', 'IT') # 如果key存在则返回原值,如果不存在则添加
dict.fromkeys(('name', 'age'), None) # 创建一个字典,默认value为None
info1=info.copy() # 复制
info.clear()      # 清除
View Code

 

6、集合:

 

7、布尔:

布尔 只有两个值:
True:  代表为真   
False: 代表为假

>>> 3 < 6
True
>>> 3 > 6
False

所有的数据类型都自带布尔值:

1、None、0、空 (字符串、列表、字典、元组)等这几种情况下为False
2、其余都为True

 

 

 

posted @ 2018-04-02 13:56  黑貓警長  阅读(166)  评论(0编辑  收藏  举报
Life is short, you need Python