码迷,mamicode.com
首页 > 编程语言 > 详细

王亟亟的Python学习之路(四)-循环,条件,Range,list和tuple

时间:2015-11-02 17:42:09      阅读:242      评论:0      收藏:0      [点我收藏+]

标签:python   函数   

转载请注明出处:王亟亟的大牛之路

这是本次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=True
if flag==True:
    print(‘第41行if判断‘,flag)
else:
    print(‘第43行 if判断‘,flag)

或者

x=True
if x:
    print(‘True‘)

还有

age=10
if 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)

显示结果:   
0
3
6
9

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]=55
changeTuple[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   函数   

原文地址:http://blog.csdn.net/ddwhan0123/article/details/49588757

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!