开发过程中,我们需要处理文本、图形、音频、视频、网页等各种各样的数据,不同的数据,需要定义不同的数据类型。在Python中,能够直接处理的数据类型主要有以下几种:数字、字符串、列表、元组、字典、集合等。

数字

数字主要有整数、浮点数、复数3种类型。在Python中,整数(在 Python3.X 版本中 long 类型被移除,使用 int 替代)、浮点数、复数分别用int、float、complex表示。如下表格所示:

int float complex
10 10.1 3.14j
-110 -10.1 4.53e-7j
11 10.11 4.53j
0 -32.4e100 3e+26J

字符串(String)

字符串(String)是 Python 中最常用的数据类型。我们可以使用单引号(' ')或双引号(" ")来创建字符串,如下代码所示:

# 使用单引号表示字符串
'10' '-10' '10.0' '3.14j' 'test' '我真的是字符串' 'True' 'False' # 使用双引号表示字符串
"10" "-10" "10.0" "3.14j" "test" "我真的是字符串" "True" "False"

通过上面我们可以发现,不论是、整数、浮点数、复数还是布尔类型(True 和False 下面会讲到),用 ' ' 或" "包起来后,都表示字符串。所以10 不等同于 '10',一个表示数字,一个表示字符串,其他依此类推。

操作字符串

字符串是不可改变的,但是我们对字符串进行索引或拼接操作,如下代码所示:

a = 'testDog'
b = a + "TEST"
print("通过索引方式访问元组第1个元素:", a[0])
print("字符串第2个元素到第5个元素", a[1:4])
print("字符串第2个元素到第5个元素,步长为2", a[1:4:2])
print("字符串拼接:", b)

打印如下内容

通过索引方式访问元组第1个元素: t

元组第2个元素到第5个元素 est

元组第2个元素到第5个元素,步长为2 et

字符串拼接: testDogTEST

小结:索引从0开始,字符串第1个元素,索引为0。通过上面我们可以发现,我们可以使用下标索引来访问字符串的值,同样也可以使用方括号的形式截取字符串,使用方括号的形式取值原则是,取左不取右。比如a[1:4],我们取了第2个字符,但是没有取索引为4的字符。当我们使用方括号的形式截取字符串,也可以使用步长方式,如a[1:4:2],a[1:4]取到est,步长为2时,取到et。

列表

列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型,创建一个列表,只要用逗号分隔不同的数据项,然后使用方括号括起来即可。列表可以为一个空列表,也可以是一个嵌套列表,如下代码所示:

list1 = []
list2 = [1, 1.1, 2, 3]
list3 = ['你好', 'python', ]
list4 = [1 + 2, 2 + 3]
list5 = [1, 'test', False, 1 + 2, [1, 2]] print("list1是一个空列表:", list1)
print("查看list1的类型:", type(list1))
print(list2)
print(list3)
print("列表中可以存放表达式", list4)
print("list5是一个嵌套列表:", list5)

上面代码将输出如下内容:

list1是一个空列表: []

查看list1的类型: <class 'list'>

[1, 1.1, 2, 3]

['你好', 'python']

列表中可以存放表达式 [3, 5]

list5是一个嵌套列表: [1, 'test', False, 3, [1, 2]]

访问列表中的值

我们可以像操作字符串哪样使用下标索引来访问列表中的值,同样也可以使用方括号的形式截取字符,如下代码所示:

a = [1, 'test', '你好', 1 + 2, False, [2, 3, 'CHINA']]
print("通过索引方式访问列表第1个元素:", a[0])
print("通过索引方式访问列表第2个元素:", a[1])
print("通过索引方式访问列表第3个元素:", a[2])
print("通过索引方式访问列表第4个元素:", a[3])
print("通过索引方式访问列表第5个元素:", a[4])
print("通过索引方式访问列表第6个元素:", a[5])
print("用负数访问方式,列表第6个元素为:", a[-1])
print("用负数访问方式,列表第5个元素为:", a[-2]) print("列表第2个元素到第6个元素,步长为2:", a[1:5:2])
print("倒数第2个数到最后:", a[-2:])
print("列表第6个元素是一个列表,访问嵌套列表第1个元素:", a[5][0])
print("列表第6个元素是一个列表,访问嵌套列表第3个元素:", a[5][2])

上面代码将输出如下内容:

通过索引方式访问列表第1个元素: 1

通过索引方式访问列表第2个元素: test

通过索引方式访问列表第3个元素: 你好

通过索引方式访问列表第4个元素: 3

通过索引方式访问列表第5个元素: False

通过索引方式访问列表第6个元素: [2, 3, 'CHINA']

用负数访问方式,列表第6个元素为: [2, 3, 'CHINA']

用负数访问方式,列表第5个元素为: False

列表第2个元素到第6个元素,步长为2: ['test', 3]

倒数第2个数到最后: [False, [2, 3, 'CHINA']]

列表第6个元素是一个列表,访问嵌套列表第1个元素: 2

列表第6个元素是一个列表,访问嵌套列表第3个元素: CHINA

当索引超出了范围时,Python会报一个IndexError错误,运行下面代码,将会输出 IndexError: list index out of range。

a = [1, 'test', '你好', 1 + 2, False, [2, 3, 'CHINA']]
print(a[10])
print(a[-10])

小结:列表不仅可以存放数字、字符串、表达式、布尔类型等,还可以再嵌套一个列表。访问列表的方式可以通过索引或使用方括号的形式截取字符,方括号的形式还可以指定步长。

更新列表

列表是可变的,我们可以通过索引方式更新列表,也可以使用insert或append方法更新列表,insert指定位置插入,append会加在列表最后,如下代码所示:

a = [1, 'test', '你好', 1 + 2, False, [2, 3, 'CHINA']]
a[0] = 33
a.insert(0, 'Jack')
a.append('TestDog')
print(a)

上面代码将输出如下内容:

['Jack', 33, 'test', '你好', 3, False, [2, 3, 'CHINA'], 'TestDog']

删除列表元素

列表元素是可以删除的,我们可以使用del 或者pop方法删除列表元素,pop也可以通过索引方式删除,当不指定时,删除最后一个元素,如下代码所示:

a = [1, 'test', '你好', 1 + 2, False, [2, 3, 'CHINA']]
del a[0]
print("删除第1个元素 : ", a)
a.pop(2)
print("删除第3个元素 : ", a)
a.pop()
print("删除第最后1个元素 : ", a)

上面代码将输出如下内容:

删除第1个元素 : ['test', '你好', 3, False, [2, 3, 'CHINA']]

删除第3个元素 : ['test', '你好', False, [2, 3, 'CHINA']]

删除第最后1个元素: ['test', '你好', False]

欢迎关注微信公众号:软件测试汪。软件测试交流群:809111560

4. Python数据类型之数字、字符串、列表的更多相关文章

  1. Python数据类型-布尔/数字/字符串/列表/元组/字典/集合

    代码 bol = True # 布尔 num = 100000000; # 数字 str = "fangbei"; # 字符串 str_cn = u"你好,方倍" ...

  2. 【转】Python数据类型之“数字(numerics)”

    [转]Python数据类型之“数字(numerics)” 上一节内容说的是“Python基本语法”,本节主要讲下Python中的数据类型. 存储在内存中的数据通常有两个属性: 在内存中的存放位置:这个 ...

  3. Python之旅Day1 数据类型初识(数字|字符串|列表|数据运算) 编码 表达式(if...else|for|while)

    初识PYTHON Python(英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/), 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum(吉多·范罗苏姆)于 ...

  4. Python基础4:数据类型:数字 字符串 日期

    [ Python 数据类型 ] 我们知道,几乎任何编程语言都具有数据类型:常见的数据类型有:字符串.整型.浮点型以及布尔类型等. Python也不例外,也有自己的数据类型,主要有以下几种: 1.数字: ...

  5. Python基础之:数字字符串和列表

    目录 简介 数字 字符串 字符串对象str 列表 简介 Python的主要应用是进行科学计算,科学计算的基础就是数字,字符串和列表.本文将会详细的给大家介绍一下这三个数据类型的使用情况. 数字 数字是 ...

  6. python数据类型详解及列表字典集合推导式详解

    一.运算符 Python语言支持以下类型的运算符: 算术运算符 如: #!/usr/bin/env python # -*- coding:utf-8 -*- a = 5 b = 6 print(a ...

  7. Python数据类型-01.数字和布尔值

    本节主要介绍Python中的基础知识中的数据类型,数字和布尔值 介绍几个知识点:1)内置函数print()的用法,直接打印括号里面的内容,或者print后跟多个输出,以逗号分隔.2)内置函数type( ...

  8. Python笔记_第一篇_面向过程_第一部分_5.Python数据类型之数字类型(number)

    Python 数字类型(number)用于存储数值.数据类型是不允许改变的,这就意味着如果改变number数据类型的值,将重新分配内存空间. 1.   一个简单的示例: # 以下实例在变量赋值时数字类 ...

  9. python 数据类型---布尔型& 字符串

    python数据类型-----布尔型 真或假=>1或0 >>> 1==True True >>> 0==False True python 数据类型----- ...

随机推荐

  1. ROM、PROM、EPROM、EEPROM、Flash ROM分别指什么?

    ROM指的是“只读存储器”,即Read-Only Memory.这是一种线路最简单半导体电路,通过掩模工艺, 一次性制 造,其中的代码与数据将永久保存(除非坏掉),不能进行修改.这玩意一般在大批量生产 ...

  2. php打包下载文件

    使用前请先开启:查看下php.ini里面的extension=php_zip.dll前面的分号有没有去掉; $zip=new \ZipArchive(); $zifile = 'download/' ...

  3. HTML5: HTML5 Video(视频)

    ylbtech-HTML5: HTML5 Video(视频) 1.返回顶部 1. HTML5 Video(视频) 很多站点都会使用到视频. HTML5 提供了展示视频的标准. 检测您的浏览器是否支持 ...

  4. python主要探索函数

    在数据分析中,Python的主要探索函数 Python中主要用于书探索的是pandas(数据分析)和matplotlib(数据可视化).其中pandas提供了大量的数据探索的工具与数据相关的函数,这些 ...

  5. vue实现轮播效果

    vue实现轮播效果 效果如下:(不好意思,图有点大:) 功能:点击左侧图片,右侧出现相应的图片:同时左侧边框变颜色. 代码如下:(也可以直接下载文件) <!DOCTYPE html> &l ...

  6. Java对象finalize()方法

    Java提供了一种在对象即将被销毁时执行资源释放的方法.在Java中创建对象,但是不能销毁对象.JVM运行一个称为垃圾收集器的低优先级特殊任务来销毁不再引用的所有对象. 垃圾回收器给我们一个机会,在对 ...

  7. [ACM] POJ 1218 THE DRUNK JAILER (关灯问题)

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/sr19930829/article/details/37727417 THE DRUNK JAILE ...

  8. 《构建之法》IT行业的创新 读书笔记 WEEK 5

    本周选读邹欣老师的<构建之法>第16章——IT行业的创新. 邹欣老师将本章话题分成五个部分来阐述:创新的迷思.创新的时机.创新的招数.魔方的创新.创新和作坊,博主认为时机和招数这两个部分在 ...

  9. LeetCode Array Easy 189. Rotate Array

    ---恢复内容开始--- Description Given an array, rotate the array to the right by k steps, where k is non-ne ...

  10. 2019-8-31-How-to-parse-version-range

    title author date CreateTime categories How to parse version range lindexi 2019-08-31 16:55:58 +0800 ...