首页 > 编程语言 > 详细

python 基本数据类型

时间:2018-03-26 23:58:36      阅读:368      评论:0      收藏:0      [点我收藏+]

Python 的基本数据包括以下几种:

  • 数字 Number
  • 字符型 String
  • 列表 List
  • 元组 Tuple
  • 字典 Dictionary

数字

Python3 支持 int、float、bool、complex(复数)

在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。

 

布尔值:

x =0     #在整型中除了0是False,负数以及正数都是True
y =[]    #空列表为False,反之为True
z=‘‘     #空字符串为False,反之为True
print(bool(x),bool(y),bool(z))
False False False

 

字符型 String

 

list(列表 / 数组 / array),编号叫下标 / 索引 / 角标
最前面一个元素的下标时0,最后面一个元素的下标是 -1
cities=[]  #定义一个空的列表
#增加元素
cities.append(北京)  #在列表末尾增加一个元素
cities.insert(0,上海)  #在指定的位置插入一个元素,一次只能加一个。insert下标不能为负数。

#删除元素 cities.pop(-1) #删除指定的元素,传下标 cities.remove(北京) #删除指定的元素,传元素 cities.clear() #清空列表 del cities[-1] #删除指定位置的元素,传下标
#
修改 cities[1] = 南京 #指定某一个下标,直接修改即可,指定下标不能超出已有下标范围。
#
查询 print(cities) #打印整个列表 print(cities[0]) #打印指定位置的元素 print(cities.index(广州) #获取元素的下标,如果元素不存在,则报错 print(cities.count(广州) #查看元素在list 出现了几次 print(cities.reverse()) #输出None,但把列表反转了要重新print(cities)才能看到结果 ==>cities.reverse()   print(cities) cities.sort() #默认升序排序 cities.sort(reverse=True) #降序排序,按数字或字母排序 print(cities1 + cities2) #合并list 多维数组 二维数组:list 里面嵌套了一个数组, #切片,切片是list取值的一种方式 print(nums[1:3]) #切片只顾头不顾尾 print(nums[1:]) #如果从某个下标开始取到末尾,末尾的下标可以省略 print(nums[:2]) #如果是从头开始取,取到后面某个下标结束,开头的下标可以不写 print(nums[:]) #取出全部
#
循环 for i in range(1,4): #range()也是顾头不顾尾 print(i) #打印结果:1、2、3 lis= list(range(1,21)) #类型转换为list print(lis) lis= list(range(1,21)) print(lis[1:10:2]) #步长,隔2个取一个数字,到第9个下标 lis= list(range(1,21)) print(lis[::-1]) #如果步长时正数的话,就从左到右取值,如果步长为负数,则从右到左取值。相当于把列表反转。与.reverse()的区别是:.reverse()改变了列表的内容。 #当步长为负数时,a:b:-1,a必须大于b,否则取值为空 例如: lis= list(range(0,21)) print(lis) print(lis[21:10:-1]) #从下标21到下标10取值,但不包含10的下标:[20, 19, 18, 17, 16, 15, 14, 13, 12, 11] print(lis[:18:-1]) #从下标最大到下标18取值,但不包含18的下标:[20, 19] print(lis[0::-1]) #从下标0到最小下标取值,只取0的下标:[0] print(lis[::-1]) #从下标最大取到最小:[20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0] s = abcdefghi s[3] =h #字符串变量不可以修改,报错:TypeError: ‘str‘ object does not support item assignment lists = [AAA,BBB,CCC,DDD] for name in lists: #循环读取数组中的每一个元素 print(name) words = marry,lily,joker for name in words: #循环读取字符串中的每一个字符 print(name) # for 循环在循环可迭代对象的时候,每次循环的是里面的每一个元素。 #如果是一个多维数组,则要判断类型。 lists = [AAA,BBB,CCC,DDD,[1,2,3,4]] for name in lists: if type(name) == list:   for i in name:   print(i)  #打印列表中的列表:1 2 3 4
 
元组:元组也是一个list,它和 list 的区别是,元组里面的元素无法修改
t = (aaa,bbb,ccc,ddd,ee)
print(type(t))  #<class ‘tuple‘>
print(t[:3])  #元组的切片:(‘aaa‘, ‘bbb‘, ‘ccc‘)
print(t[4:])    # (‘ee‘,)
print(t.index(aaa))   #找到元素的下标
print(t.count(aaa))   #找到元素的个数    只有这两种方法,元组不能被修改。

t2 =(1,2,4)
words = (1)
words2 = (abc)
print(t2,type(t2))    #t2 <class ‘tuple‘>
print(words,type(words))  #words <class ‘int‘>
print(words2,type(words2))    #words2 <class ‘str‘>
#如果元组里面只有一个元素的话,那么你必须在这个元素后面加一个逗号,才能成为元组。

 

字典:是 key - vaule 的形式
1. 取数据方便
2. 速度快
ifos ={name:AAA,sex:,age:18}
# 查:字典取值就这两种方式:
print(ifos.get(name)) #如果key不存在,则返回None
print(ifos[name])    #如果key不存在,则报错
print(ifos.get(aaa,phone)) #指定如果取不到aaa这个key时,默认phone,这是get的另一种方法
#
ifos[phone]=1852003000 #字典是无序的,添加的值不一定在最后,如果key存在,则是修改
ifos.setdefault(height,BBB)    #增加字典的另一种方式
#
ifos[name]=YYYY #如果key已存在,用这种方式可以修改name的值,仅此一种
ifos.setdefault(name,EBB)    #如果key已存在,用这种方式不能修改name的值
#删除
ifos.pop(age) #指定key来删除
ifos.popitem()  #随机删除一个key
del ifos[phone]   #指定key来删除
ifos.clear() #清空字典

字典内置的方法:
print(ifos.values())    #获取到字典所有的value:dict_values([‘AAA‘, ‘男‘, 18]:
print(ifos.keys())  #获取到字典的所有的key:dict_keys([‘name‘, ‘sex‘, ‘age‘])
print(ifos.items()) #获取到字典的所有的k-v:dict_items([(‘name‘, ‘AAA‘), (‘sex‘, ‘男‘), (‘age‘, 18)])

#循环
for p in people:
    print(p)    #循环字典时,打印的时字典的key

常用的字符串方法:
a = \n      字 符  串      \n
c= a.strip()  #默认去掉字符串前后的空格和换行符
c= a.lstrip()   #默认去掉字符串前面的空格和换行符
c= a.rstrip()   #默认去掉字符串后面的空格和换行符

 

 

 

python 基本数据类型

原文:https://www.cnblogs.com/pengzhuopeng/p/8647579.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!