1.列表的定义

列表是由中括号括起来的,每一个元素之间都是由逗号隔开

eg:定义一个列表

>>> a = [1, 2, 3, 4, 5, 6]
>>> a
[1, 2, 3, 4, 5, 6]
>>>

2.列表的特点

(1)有序

(2)编号

(3)遍历

(4)可追加、插入

(5)可删除、弹出

(6)可修改

(7)长度不定

eg1: 访问列表中的元素

从左往右访问的话编号从0开始

>>> a[0]
1

从右往左访问的话编号从-1开始

>>> a[-1]
6

eg2: 修改列表的某一个元素的值

>>> a
[1, 2, 3, 4, 5, 6]
>>> a[1] = 1
>>> a
[1, 1, 3, 4, 5, 6]

eg3: 列表遍历用for

>>> for i in a:
...     print(i)
...
1
1
3
4
5
6

eg4: 删除列表中的元素

>>> a
[1, 1, 3, 4, 5, 6]
>>> del a[1]
>>> a
[1, 3, 4, 5, 6]

eg5: 查看列表的长度

>>> len(a)
5

eg6: 查看索引元素是列表的的长度

>>> a.append([1,2])
>>> a
[1, 3, 4, 5, 6, [1, 2]]
>>> len(a[-1])
2

eg7: 查看值是否在列表中

>>> a
[1, 3, 4, 5, 6, [1, 2]]
>>> 1 in a
True
>>> 1 not in a
False

3.列表转换

规则:

list ----> int       不能转换

list ----> float    不能转换

list ----> str        可以转换   转换后有 “”

list ----> bool     可以转换   空列表是 False   否则就是 True

4.小练习

eg1:  写一个等差数列 从1开始到 100 依次递增5

用while实现

#!/usr/bin/python
i = 1
while i <= 100:print(i)i += 5

用range函数实现

#!/usr/bin/python
for i in range(1,100,5):print(i)

eg2: 写一个数字列表 找出数字列表中的数字最大的数字

用while循环实现

#!/usr/bin/python
num_list = [5,6,10,4,1,36]
num_length = len(num_list)
j = 1
max = num_list[0]
while j < num_length:if max > num_list[j]:j +=1else:max = num_list[j]j +=1
print(max)

用for循环实现

#!/usr/bin/python
max1 = num_list[0]
for z in num_list:if z > max1:max1 = z;
print(max1)

用python自带函数找最大的值

>>> a
[1, 3, 4, 5, 6]
>>> max(a)
6

用python自带的函数找最小的值

>>> min(a)
1

eg3: Python中表示什么都没有用 None , 如下用None做比较

#!/usr/bin/pythonnum = [-1,-2,-3]max = Nonefor i in num:if max is None:max = ielif i > max:max = i
print(max)

5.list的四则运算

list可以做的四则运算有加法和乘法(乘法必须是乘以整数)

list的加法

>>> a = [1, 2, 3]
>>> b = [4, 5, 6]
>>> a + b
[1, 2, 3, 4, 5, 6]

list的乘法

>>> a * 2
[1, 2, 3, 1, 2, 3]

6.list的切片(先找索引编号,再找索引编号对应的元素)

切片和range类似  range(start, end, step)

注:切片是根据前一个列表的索引编号组成一个新的list

从a列表中用切片截取一个新的分片

>>> a
[1, 2, 3]
>>> a[1:2]
[2]

切片的格式:  A[start, end, step]

规则:

step = 1   start = 0     end != len(list)    -----> list[:end]    start可以省略

step = 1   start = 0     end = len(list)     -----> list[start:]

start = 0   step != 1    end = len(list)     -----> list[::step]

start = 0   step = 1     end = len(list)     -----> list[:]

转载于:https://blog.51cto.com/12217124/2334842

Python自动化运维开发----基础(四)列表基础相关推荐

  1. CrazyWing:Python自动化运维开发实战 四、Python变量

    导语: 1.什么是变量 2.变量名称的命名 3.变量赋值 4.变量存储数据的方式 5.引用计数 什么是变量: python学习过程中会用到许多数据,那为了方便操作,需要把这些数据分别用一个简单的名字代 ...

  2. python cs架构 运维_运维架构师-Python 自动化运维开发-005

    *运维架构师-Python 自动化运维开发-005 四.Ipython 交互式解释器 1.Ipython 简介 IPython外加一个文本编辑器 Windows系统下是IPython加notepad+ ...

  3. 2018python培训-2018年5月python自动化运维开发课程新班正式开课!

    2018年5月python自动化运维开发课程新班正式开课! 作者: 更新时间::2018-05-16 新推出的ansible是新出现的 自动化 运维工具 , 基于Python研发 . 糅合了众多老牌运 ...

  4. python executemany执行延迟_运维架构师-Python 自动化运维开发-031

    *运维架构师-Python 自动化运维开发-031 十九.Python3 操作数据库 1.Python3 操作 MySQL 1.基本介绍 Python3 操作 MySQL 数据库 可以使用的模块是 p ...

  5. python 自动运维架构师_运维架构师-Python 自动化运维开发-031

    *运维架构师-Python 自动化运维开发-031 十九.Python3 操作数据库 1.Python3 操作 MySQL 1.基本介绍Python3 操作 MySQL 数据库 可以使用的模块是 py ...

  6. 云计算开发教程:Python自动化运维开发实战流程控制

    今天这篇文章是给大家分享一些云计算开发教程,今天讲解的是:Python自动化运维开发实战流程控制. Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. P ...

  7. python运维开发培训_运维架构师-Python 自动化运维开发-014

    运维架构师-Python 自动化运维开发-014 九.标准数据类型 1.为什么编程语言中要有类型 类型有以下几个重要角色:对机器而言,类型描述了内存中的电荷是怎么解释的. 对编译器或者解释器而言,类型 ...

  8. python有架构师吗_运维架构师-Python 自动化运维开发-021

    *运维架构师-Python 自动化运维开发-021 十.文件操作 4.Python里的目录 所有文件都包含在各个不同的目录下,不过Python也能轻松处理.os模块有许多方法能帮你创建,删除和更改目录 ...

  9. 云计算Python自动化运维开发实战 三、python文件类型

    为什么80%的码农都做不了架构师?>>>    云计算Python自动化运维开发实战 三.python文件类型 导语: python常用的有3种文件类型 1. 源代码     py ...

  10. python 自动运维架构师_运维架构师-Python 自动化运维开发-013

    *运维架构师-Python 自动化运维开发-013 5.常用快捷键(附加课余研究) 1.Ctrl + Enter:在下方新建行但不移动光标: 2.Shift + Enter:在下方新建行并移到新行行首 ...

最新文章

  1. 【原创】项目管理杂谈(1):代码评审这点事,元芳你怎么看
  2. MFC 图片部分透明
  3. visual studio code更新
  4. java已知 求p_Java 0520 第五次课作业
  5. 媒体查询@media query
  6. 多x多y的origin图_孖记士多 X 阿婆牛杂!广州的两大本土老字号,搞在一起了!...
  7. server.htaccess 具体解释以及 .htaccess 參数说明
  8. miui怎么用第三方图标包_小米用户必备,不能错过的免费MIUI主题
  9. 信天翁水域雷达监视系统
  10. python常用的编程软件_mPython(图形化编程软件)
  11. 腾讯地图基于 WebGL实现自定义栅格图层踩坑实录
  12. [c++]数组的逆输出
  13. verilog latch
  14. st visual develop STM8 软件配置教程
  15. xcode4.3 构建ipa包发布到iphone
  16. 自发光效果(控制自发光的颜色、强度,呼吸光可选)
  17. 程序员必备的6款工具软件,炒鸡实用!
  18. 揭秘udesk智能质检:质检+分析双剑合璧
  19. linux debian硬盘安装,硬盘安装Debian
  20. 程序员加薪升职之成长金字塔

热门文章

  1. SpringBoot启动项目时提示:Error:(3, 32) java: 程序包org.springframework.boot不存在
  2. Winform中在ZedGraph中最多可以添加多少条曲线
  3. MyBatisPlus中开启了逻辑删除则更新逻辑字段不再管用
  4. SpringBoot中定义全局异常处理器
  5. java方法区超详细汇总,方法区到底是干什么用的?不懂方法区不能说了解jvm!
  6. IT项目管理总结:第十二章 项目采购管理
  7. 解决方案仅用于执行startup.bat启动时乱码解决
  8. MoSCow和Kano
  9. jvm在windows和linux,理解JVM如何使用Windows和Linux上的本机内存
  10. binary search tree python_二叉查找树(binary search tree)——python实现