王亟亟的Python学习之路(四)-循环,条件,Range,list和tuple
来源:互联网 发布:联想研究院 知乎 编辑:程序博客网 时间:2024/06/05 03:50
转载请注明出处:王亟亟的大牛之路
这是本次Python学习历程的第4篇,之前的文章:传送门
这篇主要讲以下几个知识点
- 循环
- 条件语句
- range函数
- list
- tuple
循环
Python中的循环语句有 for 和 while。同样需要注意冒号和缩进。另外,在Python中没有do..while循环。
需要注意冒号和缩进,因为没有{}来帮助我们把循环里面的内容封起来
while循环
while 判断逻辑: 业务内容
或者for…in循环
names = ['12',12, 'aa']for name in names: print(name)
条件判断
也就是我们常说的如果怎么怎么样,否则怎么怎么样,或者怎么怎么样。
在Python中没有switch – case语句。
每个条件后面要使用冒号(:)
使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
诸如:
flag=Trueif flag==True: print('第41行if判断',flag)else: print('第43行 if判断',flag)
或者
x=Trueif x: print('True')
还有
age=10if age<10: print(age,"<10 第47行if判断")elif age<20: print(age,"<20 第49行elif判断")else: print("年纪奇怪 第51行 else判断")
Range函数
如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列类似于Java中的以下操作
public ArrayList<String> makedata(int value){ ArrayList<String> list=new ArrayList<String>(); for(int k=0;k<value;k++){ list.add(k+" "); } return list; }
而在Python中,这么一个循环操作只需要
range(100)
可以使range以指定数字开始并指定不同的增量
for i in range(0, 10, 3) : print(i)显示结果: 0369
range()还可以创建列表
list(range(5))[0, 1, 2, 3, 4]
list
list在上一篇文章已经做了比较详细的介绍,这一部分是在上一篇的基础上做一定的丰富
用索引来访问list中每一个位置的元素,记得索引是从0开始的:
list=['a',123,'ssa:s']print(list[0])打印结果:'a'
list是可以顺序添加的
list.append(1)print('第9行',list)结果:['a', 123, 'ssa:s', 1]
list可以从中插入
list.insert(0,'sqca')print('第12行',list)打印结果: ['sqca', 'a', 123, 'ssa:s', 1]
删除指定元素
list.pop(0)#本来的列表: ['sqca', 'a', 123, 'ssa:s', 1]结果:['a', 123, 'ssa:s']
list是可以进行元素置换的
list[1]="王亟亟"结果:['a', '王亟亟', 'ssa:s']
tuple
tuple在上一篇文章已经做了比较详细的介绍,这一部分是在上一篇的基础上做一定的丰富
疑问,有了list为何需要tuple?
安全,安全,安全 重要的是说三遍。
如何定义只有一个元素的元祖?
这样吗?myTuple=(1) 并不是,是这样myTuple=('aa',)结果为:('aa',)
tuple是不可二次修改的,那有办法让他再变化吗?
答案是,有。我们看个例子
a=[33,44]pp="你好"changeTuple=(a,2,3,pp)print(changeTuple)pp="你好啊"print(changeTuple)changeTuple[0][0]=55changeTuple[0][1]=66#变了是因为元素中列表的指针发生了变化,元组只是指向了那个元素的地址print(changeTuple)
输出的结果是:
([33, 44], 2, 3, '你好')([33, 44], 2, 3, '你好')([55, 66], 2, 3, '你好')
还是产生了变化,SMG?怎么变了?
*tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向’a’,就不能改成指向’b’,指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的!
理解了“指向不变”后,要创建一个内容也不变的tuple怎么做?那就必须保证tuple的每一个元素本身也不能变。*
今天同样也有一份例子代码,相对于现在列出的更为丰富些,还有入门级的99乘法表
代码地址:https://github.com/ddwhan0123/PythonExample/blob/master/%E7%A4%BA%E4%BE%8B/l2demo.py
你的鼓励是我的动力,谢谢!
- 王亟亟的Python学习之路(四)-循环,条件,Range,list和tuple
- python学习之 list tuple range
- 王亟亟的Python学习之路(一)-环境搭建
- 王亟亟的Python学习之路(二)-项目创建以及要点提及
- 王亟亟的Python学习之路(三)-基础语法以及基本数据类型
- 王亟亟的Python学习之路(五)-dictionary,set,函数,函数参数
- 王亟亟的Python学习之路(六)-递归,迭代,列表生成式
- 王亟亟的Python学习之路(七)-date,continue,迭代对象,生成器
- 王亟亟的Python学习之路(八)-函数式编程,map(),reduce(),filter()
- 王亟亟的Python学习之路(九)-sorted()排序以及简单字符串处理
- 王亟亟的Python学习之路(10)-匿名函数
- 自学python(03)list和tuple,条件判断和循环,dict和set
- python再复习(2)list、tuple、条件判断和循环、字典和set
- Python学习笔记<list,tuple,range再探>
- python学习之List和Tuple
- python学习(三)之list和tuple
- 王亟亟的Python学习之路(10)-函数对象的作用域,函数作为返回值,闭包
- python学习----list和tuple的区别
- JS 加法函数,用来得到精确的加法结果
- 第四周--【项目5 - 猴子选大王】
- 第七周 队列数组
- iOS面试题
- Scala学习——高阶函数
- 王亟亟的Python学习之路(四)-循环,条件,Range,list和tuple
- 第十周 项目二-二叉树遍历的递归算法
- 第8周项目1 - 建立顺序串的算法库
- dijkstra算法的实现。
- NYOJ-21-三个水杯【BFS】
- linux下安装MYSQL错误:conflicts with file from package mysql-libs-*的解决方法
- Html之marquee标签滚动使用详解
- Edge Padding
- iOS 应用程序图标数字角标