day5-数字和列表

数字相关类型

python中数字相关类型有四个:int,float, bool, *complex

int(整型) - 所有的整数对应的类型

1)表示: 数字直接写
2)转换:int(数据)不是所有的数据都可以转换成整数,只有浮点数、布尔、部分字符串*python2.x中整数有两种类型:int、long

浮点数转换成整数:直接去掉小数部分,保留整数部分

print(int(12.5))    # 12
print(int(1.9))     # 1
print(int(-1.9))    # -1

布尔转整数

print(int(True))    # 1
print(int(False))   # 0

字符串转整数 - 弃掉引号后本身就是一个整数的字符串才能转换成整型

# print(int('abc'))     # 报错
# print(int('7823'))      # 7823
# print(int('12.5'))    # 报错

float(浮点数) - 所有小鼠对应的类型

1)表示:直接表示, 支持科学计数法
2)转换:float(数据)
不是所有数据都可以转换成浮点型,只有整数、布尔和部分字符串可以转

print(float(10))    # 10.0
print(float(123))   # 123.0
print(float(True))  # 1.0

字符串转浮点型 - 去掉应本身是有效数字的字符串都可以转换成浮点型

# print(float('abc'))    # 报错
print(float('123'))     # 123.0
print(float('0.12'))    # 0.12
print(float('3e4'))     # 30000.0

bool(布尔)

1)表示:直接写 - True、False
2)转换:bool(数据)
所有的数据都可以转换成布尔;零值和空值会转换成False, 其他的都是True

print(bool(-123))    # True
print(bool(0))      # False
print(bool(0.0))    # False
print(bool(''), bool(""))   # False False
print(bool([]))     # Falseprint(True + 1)    # 2
print(False*10)    # 0

*complex(复数) - 由实部和虚部组成的数

虚部单位是:j

虚部的1不能省

直接支持复数的运算

num1 = 10+20j
print(1j**2)    # (-1+0j)num2 = 3 - 5j
print(num1 + num2)    # 13+15j
print(num1 * num2)    # (130+10j)

列表

列表是容器型数据类型:将[]作为容器的标志,里面多个元素用逗号隔开:[元素1,元素2,元素3…]

a = []   # a是一个空列表b = [100, 200, True, 'abc']
c = [100, 200, ['abc', 123]]

任何类型的数据都可以作为列表的元素

d = [100,12.5,'abc',[1, 2],(10, 20),{'name': '余婷', 'age': 18},{1, 5},lambda x: x**2
]

获取列表元素

获取单个元素

语法:列表[下标] - 获取指定下标对应的元素

说明:列表 - 任何结果是列表的表达式(具体的列表数据,保存列表数据的变量。。。)

​ [] - 固定写法

​ 下标 - 又叫索引;它是元素在容器中的位置标志(元素在容器中的顺序值)

​ 下标值的范围有两种:

​ (1)从0开始不断加1的下标值,其中0表示第一个,1表示第二个。。。。

​ (2)从-1开始不断减1的下标值,其中-1表示倒数第一个,-2表示倒数第二个

注意:下标不能越界

list1 = [10, 20, 30, 'abc']print(list1[1], list1[-3])
print(list1[-1], list1[3])
# print(list1[10])        # IndexError: list index out of range
# print(list1[-5])        # IndexError: list index out of range

获取部分元素

1)语法:列表[开始下标:结束下标:步长]
2)规则:
a.如果步长为正,表示从前往后取(从开始下标到结束下标), 开始下标对应的元素能取到,结束下标对应的元素取不到
b.如果步长为负,表示从后往前取(从开始下标到结束下标), 开始下标对应的元素能取到,结束下标对应的元素取不到

movies = ['阿甘正传', '肖生克的救赎', '当幸福来敲门', '霸王别姬', '花样年华', '人在囧途']
print(movies[1:5:1])    # ['肖生克的救赎', '当幸福来敲门', '霸王别姬', '花样年华']
print(movies[1:-1:1])   # ['肖生克的救赎', '当幸福来敲门', '霸王别姬', '花样年华']
print(movies[5:1:1])    # []
print(movies[5:1:-1])   # ['人在囧途', '花样年华', '霸王别姬', '当幸福来敲门']
print(movies[5:1:-2])   # ['人在囧途', '霸王别姬']
print(movies[1:-1:-2])  # []
print(movies[1:-2:1])   # ['肖生克的救赎', '当幸福来敲门', '霸王别姬']
print(movies[-1:-5:-2])     # ['人在囧途', '霸王别姬']
print(movies[-4:2:1])   # []

省略步长:列表[开始下标:结束下标]

省略步长就相当于步长为1:列表[开始下标:结束下标] == 列表[开始下标:结束下标:1]

names = ['海贼王', '火影', '死神', '妖精的尾巴', '柯南', '犬夜叉', '进击的巨人', '一人之下']
print(names[1:-2])      # ['火影', '死神', '妖精的尾巴', '柯南', '犬夜叉']
print(names[-1:5])      # []

省略开始下标:列表[:开始下标:步长] / 列表[:结束下标]

如果步长为正,省略开始下标表示从第一个元素开始往后取,取到结束下标对应的位置
如果步长为负,省略开始下标表示从最后一个元素开始往前取,取到结束下标对应的位置

print(names[:-2])       # ['海贼王', '火影', '死神', '妖精的尾巴', '柯南', '犬夜叉']
print(names[:5:2])      # ['海贼王', '死神', '柯南']
print(names[:-3:-1])    # ['一人之下', '进击的巨人']

省略结束下标:列表[开始下标::步长] / 列表[开始下标:]

如果步长为正,省略结束下标,从开始下标取到最后一个元素

如果步长为负,省略结束下标,从开始下标取到第一个元素

names = ['海贼王', '火影', '死神', '妖精的尾巴', '柯南', '犬夜叉', '进击的巨人', '一人之下']
print(names[2:])        # ['死神', '妖精的尾巴', '柯南', '犬夜叉', '进击的巨人', '一人之下']
print(names[-3::-1])    # ['犬夜叉', '柯南', '妖精的尾巴', '死神', '火影', '海贼王']
print(names[4::-2])     # ['柯南', '死神', '海贼王']
print(names[-2::-3])    # ['进击的巨人', '妖精的尾巴', '海贼王']

同时省略开始下标和结束下标:列表[::步长] / 列表[:]

开始下标和结束下标都省,那么整个选择范围就是原列表

print(names[::-1])   # 倒序  ['一人之下', '进击的巨人', '犬夜叉', '柯南', '妖精的尾巴', '死神', '火影', '海贼王']
print(names[::-2])   # ['一人之下',  '犬夜叉', 妖精的尾巴', '火影']
print(names[:])      # ['海贼王', '火影', '死神', '妖精的尾巴', '柯南', '犬夜叉', '进击的巨人', '一人之下']

遍历(一个一个的把所有元素取出来)

方法一: 直接遍历出列表中的元素
for 元素 in 列表:
循环体
(变量取到的就是列表中的元素)

方法二:通过遍历获取所有元素的下标来遍历元素
for 下标 in range(列表长度):
列表[下标]

方法三(了解)
for 下标, 元素 in enumerate(列表):
循环体

games = ['斗地主', '欢乐麻将', '开心消消乐', '三国杀', '王者荣耀', '英雄联盟']# 1)直接获取元素(掌握)
for item in games:print('item:', item)# 2)直接获取下标,通过下标获取元素(掌握)
# len(列表)  - 获取列表中元素的个数
for index in range(len(games)):print('下标:', index, '元素:', games[index])# 3)同时获取下标和元素(了解)
for index, item in enumerate(games):print('index:', index, 'item:', item)

元素的增删改

增 - 添加元素

列表.append(元素) - 在列表的最后添加指定元素

names = ['余婷', '张瑞燕', '迪丽热巴', '古力娜扎']
print(names)    # ['余婷', '张瑞燕', '迪丽热巴', '古力娜扎']names.append('蔡徐坤')
print(names)    # ['余婷', '张瑞燕', '迪丽热巴', '古力娜扎', '蔡徐坤']

列表.insert(下标, 元素) - 在指定下标对应的元素之前插入指定元素

names.insert(2, '杨幂')
print(names)            # ['余婷', '张瑞燕', '杨幂', '迪丽热巴', '古力娜扎', '蔡徐坤']names.insert(0, '胡歌')   # ['胡歌', '余婷', '张瑞燕', '杨幂', '迪丽热巴', '古力娜扎', '蔡徐坤']
print(names)names.insert(-1, '彭于晏')
print(names)        # ['胡歌', '余婷', '张瑞燕', '杨幂', '迪丽热巴', '古力娜扎', '彭于晏', '蔡徐坤']

删 - 删除元素

del 列表[下标] - 删除列表中指定下标对应的元素(下标不能越界)

names = ['胡歌', '余婷', '张瑞燕', '杨幂', '迪丽热巴', '古力娜扎', '彭于晏', '蔡徐坤']
del names[3]
print(names)        # ['胡歌', '余婷', '张瑞燕', '迪丽热巴', '古力娜扎', '彭于晏', '蔡徐坤']del names[-1]
print(names)      # ['胡歌', '余婷', '张瑞燕', '迪丽热巴', '古力娜扎', '彭于晏']# del names[7]      # IndexError: list assignment index out of range# del names         # 删除整个列表

列表.remove(元素) - 删除列表中指定的元素

如果元素不存在会报错

如果元素有多个,只删第一个

names = ['胡歌', '余婷', '张瑞燕', '杨幂', '迪丽热巴', '古力娜扎', '彭于晏', '迪丽热巴', '蔡徐坤', '迪丽热巴']
names.remove('杨幂')
print(names)    # ['胡歌', '余婷', '张瑞燕', '迪丽热巴', '古力娜扎', '彭于晏', '迪丽热巴', '蔡徐坤', '迪丽热巴']# names.remove('朱茵')   # ValueError: list.remove(x): x not in listnames.remove('迪丽热巴')
print(names)

列表.pop() - 取出列表中最后一个元素,并返回

列表.pop(下标) - 取出列表中指定下标对应的元素,并返回(下标不能越界)

names = ['胡歌', '余婷', '张瑞燕', '杨幂', '迪丽热巴', '古力娜扎', '彭于晏', '蔡徐坤']
del_name = names.pop()
print(names, del_name)    # ['胡歌', '余婷', '张瑞燕', '杨幂', '迪丽热巴', '古力娜扎', '彭于晏'] 蔡徐坤del_name = names.pop(-2)
print(names, del_name)    # ['胡歌', '余婷', '张瑞燕', '杨幂', '迪丽热巴', '彭于晏'] 古力娜扎

改 - 修改元素的值

语法:列表[下标] = 新元素 - 修改指定下标对应的元素(下标不能越界)

teleplays = ['琅琊榜', '亮剑', '庆余年', '爱情公寓', '人民的名义', '甄嬛传', '请回答1988']
teleplays[3] = '爱情公寓4'
print(teleplays)

day5-数字和列表相关推荐

  1. 5数之和python_Python基本语法5:数字和列表,基础,五

    1.数字类型 python中的数字类型: int float bool complex(复数) 1.int 所有整数对应的类型 2.float 所有小数对应的类型,支持科学计数法 3.bool Tru ...

  2. python创建数字列表_Python 生成一个从0到n个数字的列表4种方法小结

    Python 生成一个从0到n个数字的列表4种方法小结 我就废话不多说了,直接上代码吧! 第一种 def test1(): l = [] for i in range(1000): l = l + [ ...

  3. 数字和列表day0607

    数字和列表 Python中的数字类型:int(整型).float(浮点型).bool(布尔).complex(复数) int(整型) 所有整数对应的类型.(注意:在Python2.x有long) 2. ...

  4. day 5 note 数字和列表

    day 5 note 数字和列表 1. 数字相关类型 (int, float, bool, complex) 1. int(整型) - 所有的整数对应的类型 1)表示: 数字直接写 2)转换:int( ...

  5. 6-Python数字和列表

    1.数字类型 python中的数字类型: int(整型).float(浮点型).bool(布尔).complex(复数) 1.1 int(整型) 所有整数对应的类型.(注意:在python2.x有lo ...

  6. Google Earth Engine(GEE)扩展——geetool中的的各类型的其它函数(字符串、数字、列表、字典、几何、特征、影像、地图和特征集合)

    geetool中的的各类型的其它函数(字符串.数字.列表.字典.几何.特征.影像.地图和特征集合) 除了下面这个数字不知道如何使用外,其它的都可以: 这个随机数产生不知道如何使用/// //随机数字产 ...

  7. Day4-Day5数字和列表

    Day4-Day5数字和列表 01-python数字的类型 类型:int(整型).float(浮点型).bool(布尔).complex(复数) int(整型) - 所有整数对应的类型 python只 ...

  8. python100day - 04day数字和列表

    python100day - 04day数字和列表 一.数字的相关类型 python中和数字相关的类型:int(整型).float(浮点型).bool(布尔).complex(复数) 1.int(整型 ...

  9. python怎么将输入的数字变成列表_Python键盘输入转换为列表的实例

    Python输入字符串转列表是为了方便后续处理,这种操作在考试的时候比较多见. 1.在Python3.0以后,键盘输入使用input函数 eg1. >>> x=input >& ...

  10. python输入一组数字存到列表_Python如何使用输入传递多个值并将它们存储在一个列表中(简单版本),python,怎么,input,传入,储存,到...

    Python如何使用输入传递多个值并将它们存储在一个列表中(简单版本),python,怎么,input,传入,储存,到 发表时间:2020-08-20 当传入多个值时,需要使用split()函数来切割 ...

最新文章

  1. linux文件内容添加序号,nl命令将指定的各个文件添加行号编号序号标注后写到标准输出...
  2. Linux安装部署FTP服务器
  3. php寻找文本,PHP文本数据库的搜索方法_php
  4. 为什么程序员要尽量少写代码
  5. 快速解决 GRADLE 项目下载 gradle-*-all.zip 慢的问题
  6. 智能续航兼得的“超能代表”OPPO Watch 2系列正式发布
  7. iOS CocoaPods自动管理第三方开源库
  8. atom之插件安装及相关
  9. 使用WebStorm开发web前端 网页中文乱码问题的解决方案
  10. Docker搭建Jenkins2.60.3版本,及更换jenkins下载源
  11. 阿里巴巴——三面,面试经历记录
  12. flink集成springboot案例_集成-Apache Flink+Spring Boot
  13. 带你破解时间管理的谜题
  14. 华为云弹性文件服务 SFS
  15. 对中国国家气象局进行api数据分析
  16. 单细胞甲基化测序(scBS-seq)比对率奇低?你的文库方向性参数可能没选对!
  17. word如何去除表格中高亮部分(表格属性-边框和底纹)
  18. 【深度学习】增强学习
  19. java获取日期/时间
  20. 【保定SEO】怎么做好SEO关键词优化工作

热门文章

  1. nonebot2聊天机器人插件9:定时提醒器timing
  2. spring boot报错:Parameter 4 of constructor in xx required a bean of type ‘xx‘ that could not be found.
  3. 微信商户平台登录重复下载安装安全控件解决办法
  4. 金蝶K3 SQL报表系列-库存账龄分析
  5. linux驱动学习笔记(九)SPI
  6. 奇洛金卡达 father.cpp
  7. Cisco 3750/Cisco 4506 交换机vlan划分
  8. 最新Xycms广告设计中心网站系统源码V4.7
  9. win10主题保存位置
  10. mysql实验四数据库查询和视图_数据库-第四次实验报告-视图-t-sql语句