Python 数据类型之一 列表

Python 根据每个变量的初始赋值情况分析其类型,并在内部对其进行跟踪

内置数据类型
Booleans [布尔型] True[真] 或 False [假]
Numbers [数值型] Integers[整数] Float[浮点数] Fractions[分数] Complex Number[复数]
Strings [字符串型] Unicode 字符序列
Bytes [字节] 和 Bytes Arrays [字节数组]
Lists [列表] 是值的有序序列
Tuples [元组] 是有序而不可变的值序列
Sets [集合] 是无序值的集合
Dictionaries[字典] 是键值对的无序集合

布尔类型
在布尔类型上下文环境中可使用任何表达式,Python 将试图判断其真值

数值类型
Python 同时支持Integer[整数] 和 Floating Point[浮点数],无任何类型声明用于区分,通过是否有小数点来分辨它们
可使用type()函数来检测任何值或变量的类型

type(10)
<class 'int'>
type(10.0)
<class 'float'>
还可使用isinstance()函数判断某个值或变量是否为给定类型
isinstance(10,int)
True
整数和浮点数可相互强制转换
float(10)
10.0
int(10.0)
10
int() 将进行取整,对于负数,int()函数朝着0的方法进行取整
int(5.5)
5
int(-5.5)
-5
整数可以任意大

常见数值运算
    / (浮点整除) 和 // (整除):朝着最近的整数“向上”四舍五入
    ** 计算幂  % 取余
    >>> 11/2
    5.5
    >>> 11//2
    5
    >>> -11/2
    -5.5
    >>> -11//2
    -6
    >>> 11**2
    121
    >>> 11%2
    1
分数(fractions 模块)
    >>> import fractions
    >>> x = fractions.Fraction(1,3)
    >>> x
    Fraction(1, 3)
三角函数(math)
    >>> import math
    >>> math.pi
    3.141592653589793
在布尔上下文环境中的数值,零值为False[假],非零值为True[真]

列表
Python 主力数据类型,包含任何数据类型的元素
创建列表
使用中括号包括一系列以逗号分割的值即可
列表是元素的有序集合
列表索引总是以0为起点

l = [1,2,3,'a','b','c']
l[0]
1
l[5]
'c'
l[-1]
'c'
l[-3]
'a'
列表切片
按顺序从第一个切片索引元素开始,截止但不包含第二个切片索引
如果切片索引之一或两者均为负数,切片操作仍可进行
l
[1, 2, 3, 'a', 'b', 'c']
l[1:4]
[2, 3, 'a']
l[1:-1]
[2, 3, 'a', 'b']
l[2:]
[3, 'a', 'b', 'c']
l[:4]
[1, 2, 3, 'a']
l[:4:2] ==> 步长
[1, 3]
列表新增元素

  • 列表连接符,创建一个新的列表
    l
    [1, 2, 3, 'a', 'b', 'c']
    l + [4,5]
    [1, 2, 3, 'a', 'b', 'c', 4, 5]
    append()方法向列表的尾部添加一个新的元素
    l
    [1, 2, 3, 'a', 'b', 'c']
    l.append('true')
    l
    [1, 2, 3, 'a', 'b', 'c', 'true']
    extend()只接受一个列表作为参数,并将该参数的每个元素都添加到原有的列表中
    l
    [1, 2, 3, 'a', 'b', 'c', 'true']
    l.extend([4,5,6])
    l
    [1, 2, 3, 'a', 'b', 'c', 'true', 4, 5, 6]
    insert()方法将单个元素插入到列表指定位置,第一个参数是插入列表中位置索引,第二个是要插入的元素值
    l
    [1, 2, 3, 'a', 'b', 'c', 'true', 4, 5, 6]
    l.insert(0,0)
    l
    [0, 1, 2, 3, 'a', 'b', 'c', 'true', 4, 5, 6]
    在列表中检索值
    count()方法找出元素出现的次数
    index()方法找出元素在列表中第一次出现的索引值
    判断元素是否在列表中存在
    l
    [0, 1, 2, 3, 'a', 'b', 'c', 'true', 4, 5, 6, 2]
    l.count(2)
    2
    l.count('true')
    1
    l.index(2)
    2
    1 in l
    True
    8 in l
    False

在列表中删除元素
通过列表索引删除元素 del
通过列表元素值删除 remove()
每次删除列表的最后一个元素 pop(),并返回删除的元素
l
[0, 1, 2, 3, 'a', 'b', 'c', 'true', 4, 5, 6, 2]
del l[3]
l
[0, 1, 2, 'a', 'b', 'c', 'true', 4, 5, 6, 2]
l
[0, 1, 2, 'a', 'b', 'c', 'true', 4, 5, 6, 2]
l.remove(2)
l
[0, 1, 'a', 'b', 'c', 'true', 4, 5, 6, 2]
l.remove(2)
l
[0, 1, 'a', 'b', 'c', 'true', 4, 5, 6]
l.pop()
6
l.pop()
5
l.pop()
4
l
[0, 1, 'a', 'b', 'c', 'true']
布尔上下文环境中的列表
空列表为假
非空列表为真

猜你喜欢

转载自blog.51cto.com/sream/2377166