1、python 循环控制
案例1:
lucky_num = 19 input_num = int(input("Input the guess number:")) if input_num == lucky_num:
print("bingo!")
elif input_num > lucky_num:
print("The real number is smaller.")
else:
print("The real number is bigger.")
案例2:
while 循环(无限循环):
lucky_num = 19 while True:
input_num = int(input("Input the guess number:")) if input_num == lucky_num:
print("bingo!")
elif input_num > lucky_num:
print("The real number is smaller.")
else:
print("The real number is bigger.")
break 跳出:
lucky_num = 19 while True:
input_num = int(input("Input the guess number:")) if input_num == lucky_num:
print("bingo!")
break
elif input_num > lucky_num:
print("The real number is smaller.")
else:
print("The real number is bigger.")
案例3:
lucky_num = 19
input_num = -1
#True = true , False = False
while lucky_num != input_num:
input_num = int(input("Input the guess number:")) if input_num == lucky_num:
print("bingo!")
elif input_num > lucky_num:
print("The real number is smaller.")
else:
print("The real number is bigger.")
(特殊)案例4:
lucky_num = 19
input_num = -1
#True = true , False = False
while lucky_num != input_num:
input_num = int(input("Input the guess number:")) #if input_num == lucky_num:
#print("bingo!")
if input_num > lucky_num:
print("The real number is smaller.")
elif input_num < lucky_num:
print("The real number is bigger.")
print("Bingo!")
案例5:
lucky_num = 19
input_num = -1
guess_count = 0 while guess_count < 3:
print("guess number:",guess_count)
input_num = int(input("Input the guess number:"))
if input_num > lucky_num:
print("The real number is smaller.")
elif input_num < lucky_num:
print("The real number is bigger.")
else:
print("Bingo!")
break
#guess_count = guess_count + 1
guess_count += 1
else:
print("Too many retrys!")
案例6:
for 循环:
luck_num = 19
input_num = -1 for i in range(3):
input_num = int(input("input the guess num:"))
if input_num > luck_num:
print("the real number is smaller.")
elif input_num < luck_num:
print("the real number is bigger.")
else:
print("Bingo!")
break else:
print("too many retrys!")
案例7:
name = input("name:")
age = input("age:")
job = input("job:")
#拼接,每个都占内存
print("Infomation of[]:" + name + "\nname:[]" + name + "\nage:[]" + age + "\njob:[]" + job)
#只占一个空间、段落
msg = '''
Infomation of %s:
Name:%s
age:%s
job:%s
''' %(name,name,age,job)
print(msg) #print("Infomation of %s:\nName:%s\nage:%s\njob:%s" %(name,name,age,job))
案例7(特殊):
name = input("name:")
age = int(input("age:"))
job = input("job:")
#拼接,每个都占内存
#print("Infomation of[]:" + name + "\nname:[]" + name + "\nage:[]" + age + "\njob:[]" + job)
#只占一个空间、段落
#%d 数字
#%f 浮点
msg = '''
Infomation of %s:
Name:%s
age:%d
job:%s
''' %(name,name,age,job)
print(msg) #print("Infomation of %s:\nName:%s\nage:%s\njob:%s" %(name,name,age,job))
字符串功能:移除空白 分隔 长度 索引 切片
移除空白:
#.strip()移除空白、去掉空格/去掉前后的东西
name = input("name:").strip("z")
age = int(input("age:"))
job = input("job:").strip()
#拼接,每个都占内存
#print("Infomation of[]:" + name + "\nname:[]" + name + "\nage:[]" + age + "\njob:[]" + job)
#只占一个空间、段落
#%d 数字
#%f 浮点
msg = '''
Infomation of %s:
Name:%s
age:%d
job:%s
''' %(name,name,age,job)
print(msg) #print("Infomation of %s:\nName:%s\nage:%s\njob:%s" %(name,name,age,job))
索引:
>>> name_list = ["zhou", "wu", "wang"]
>>> name_list[1]
'wu'
>>> name_list[2]
'wang'
>>> name_list[0]
'zhou'
>>>
查找功能:
可用:
>>> dir(name_list)
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
>>>
追加:
>>> name_list.append("zhang")
>>> name_list
['zhou', 'wu', 'wang', 'zhang']
>>> name_list.append("wu")
>>> name_list
['zhou', 'wu', 'wang', 'zhang', 'wu']
>>>
查找:
['zhou', 'wu', 'wang', 'zhang', 'wu']
>>> name_list.index("wu")
1
>>> name_list.count("wu")
2
>>>
插入:
>>> name_list.insert(2,"xu")
>>> name_list
['zhou', 'wu', 'xu', 'wang', 'zhang', 'wu']
>>>
删除(最后一个):
>>> name_list
['zhou', 'wu', 'xu', 'wang', 'zhang', 'wu']
>>> name_list.pop()
'wu'
>>> name_list.pop()
'zhang'
>>>
指定删除:
>>> name_list.remove("xu")
>>> name_list
['zhou', 'wu', 'wang']
>>>
翻转:
['zhou', 'wu', 'wang']
>>> name_list.reverse()
>>> name_list
['wang', 'wu', 'zhou']
>>>
排序(数字、字符、字符串):
['wang', 'wu', 'zhou']
>>> name_list.sort()
>>> name_list
['wang', 'wu', 'zhou']
>>>
删除列表指定值:
['zhou', 'wang', 'zhou', 'wu', 'zhou']
>>> for i in range(name_list.count("zhou")):
name_list.remove("zhou")
>>> name_list
['wang', 'wu']
>>>
>>> a = [1, 2, 3, 'a', 'b']
>>> a[0:2]
[1, 2]
>>> a[0:3]
[1, 2, 3]
>>> a.insert(2,4)
>>> a
[1, 2, 4, 3, 'a', 'b']
>>> a[0:3]
[1, 2, 4]
>>> a[2:5] SyntaxError: unexpected indent
>>> a[2:5]
[4, 3, 'a']
>>> a[0:5:2]
[1, 4, 'a']
>>> a[0:5:3]
[1, 3]
>>> a[:-2]
[1, 2, 4, 3]
>>> a[-2]
'a'
>>> a[-2:]
['a', 'b']
>>> a[0:3]
[1, 2, 4]
>>> a[:3]
[1, 2, 4]
>>> a.sort()
Traceback (most recent call last):
File "<pyshell#16>", line 1, in <module>
a.sort()
TypeError: unorderable types: str() < int()
>>> a[0:4]
[1, 2, 3, 4]
>>> b = a[:4]
>>> b.sort()
>>> b
[1, 2, 3, 4]
>>> help(a.sort)
Help on built-in function sort: sort(...) method of builtins.list instance
L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE*
叠加extend:
>>> a
[1, 2, 3, 4, 'a', 'b']
>>> b
[1, 2, 3, 4]
>>> a + b
[1, 2, 3, 4, 'a', 'b', 1, 2, 3, 4]
>>> a.extend(b)
>>> a
[1, 2, 3, 4, 'a', 'b', 1, 2, 3, 4]
>>> name = "xiaolong"
>>> a.extend(name)
>>> a
[1, 2, 3, 4, 'a', 'b', 1, 2, 3, 4, 'x', 'i', 'a', 'o', 'l', 'o', 'n', 'g']
range(迭代器):
>>> range(1)
range(0, 1)
>>> range(10)
range(0, 10)
>>> d = range(10)
>>> d
range(0, 10)
Python 列表(List)
转载地址:http://www.runoob.com/python/python-lists.html
序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。
Python有6个序列的内置类型,但最常见的是列表和元组。
序列都可以进行的操作包括索引,切片,加,乘,检查成员。
此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。
列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。
列表的数据项不需要具有相同的类型
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:
list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = ["a", "b", "c", "d"];
与字符串的索引一样,列表索引从0开始。列表可以进行截取、组合等。
访问列表中的值
使用下标索引来访问列表中的值,同样你也可以使用方括号的形式截取字符,如下所示:
#!/usr/bin/python list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ]; print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
以上实例输出结果:
list1[0]: physics
list2[1:5]: [2, 3, 4, 5]
更新列表
你可以对列表的数据项进行修改或更新,你也可以使用append()方法来添加列表项,如下所示:
#!/usr/bin/python list = ['physics', 'chemistry', 1997, 2000]; print "Value available at index 2 : "
print list[2];
list[2] = 2001;
print "New value available at index 2 : "
print list[2];
注意:我们会在接下来的章节讨论append()方法的使用
以上实例输出结果:
Value available at index 2 :
1997
New value available at index 2 :
2001
删除列表元素
可以使用 del 语句来删除列表的的元素,如下实例:
#!/usr/bin/python list1 = ['physics', 'chemistry', 1997, 2000]; print list1;
del list1[2];
print "After deleting value at index 2 : "
print list1;
以上实例输出结果:
['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :
['physics', 'chemistry', 2000]
注意:我们会在接下来的章节讨论remove()方法的使用
Python列表脚本操作符
列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。
如下所示:
Python 表达式 | 结果 | 描述 |
---|---|---|
len([1, 2, 3]) | 3 | 长度 |
[1, 2, 3] + [4, 5, 6] | [1, 2, 3, 4, 5, 6] | 组合 |
['Hi!'] * 4 | ['Hi!', 'Hi!', 'Hi!', 'Hi!'] | 重复 |
3 in [1, 2, 3] | True | 元素是否存在于列表中 |
for x in [1, 2, 3]: print x, | 1 2 3 | 迭代 |
Python列表截取
Python的列表截取与字符串操作类型,如下所示:
L = ['spam', 'Spam', 'SPAM!']
操作:
Python 表达式 | 结果 | 描述 |
---|---|---|
L[2] | 'SPAM!' | 读取列表中第三个元素 |
L[-2] | 'Spam' | 读取列表中倒数第二个元素 |
L[1:] | ['Spam', 'SPAM!'] | 从第二个元素开始截取列表 |
Python列表函数&方法
Python包含以下函数:
序号 | 函数 |
---|---|
1 | cmp(list1, list2) 比较两个列表的元素 |
2 | len(list) 列表元素个数 |
3 | max(list) 返回列表元素最大值 |
4 | min(list) 返回列表元素最小值 |
5 | list(seq) 将元组转换为列表 |
Python包含以下方法:
序号 | 方法 |
---|---|
1 | list.append(obj) 在列表末尾添加新的对象 |
2 | list.count(obj) 统计某个元素在列表中出现的次数 |
3 | list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表) |
4 | list.index(obj) 从列表中找出某个值第一个匹配项的索引位置 |
5 | list.insert(index, obj) 将对象插入列表 |
6 | list.pop(obj=list[-1]) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 |
7 | list.remove(obj) 移除列表中某个值的第一个匹配项 |
8 | list.reverse() 反向列表中元素 |
9 | list.sort([func]) 对原列表进行排序 |
1、python 循环控制的更多相关文章
- python新手第一天学习笔记-python循环控制和第一个python小游戏
Python的三种逻辑控制 1.python语法. python 是以缩进作为基本判断的.同一代码缩进需要保持一致.否则会报错 1.if 的三种循环 _age = 53 # 注意,input接受的都是 ...
- Python 循环控制
for循环 Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串 for 变量 in 列表.字典.字符串.函数: 执行语句 ...
- Python循环控制
一.比较符 和算术操作符一样,布尔操作符也有操作顺序.在所有算术和比较操作符求值后,Python 先求值 not 操作符,然后是 and 操作符,然后是 or 操作符. 二.if控制 if name ...
- (6)python 循环控制
一.if语句 1.条件执行和if语句 2.else子句 3.elif子句 多个检查条件时 4.嵌套代码 5.空语句 使用pass占位 6.断言 关键字 assert 判断表达式前加上这个关键字表示, ...
- python之路1(初识python)
python简史: python我认为特性就是简洁,灵活,高效. python重要版本: python1991年问世, python2.4:2004,同年django框架诞生. python2.6:2 ...
- Python学习笔记 - day4 - 流程控制
Python流程控制 Python中的流程控制主要包含两部分:条件判断和循环. Python的缩进和语法 为什么要在这里说缩进和语法,是因为将要学习的条件判断和分支将会涉及到多行代码,在java.c等 ...
- 干货 | Python进阶系列之学习笔记(四)
目录 Python条件判断 Python循环语句 Python循环控制 迭代器与生成器 异常 一.Python 条件判断 如果某些条件满足,才能做某件事情:条件不满足时,则不能做,这就是所谓的判断. ...
- 2-Python基础语法-内存管理-运算符-程序控制
目录 1 Python 基础语法 1.1 注释 1.2 缩进 1.3 续行 1.4 标识符 1.5 转义序列 1.6 数字 1.7 字符串 1.8 其他 2 Python 运算符 2.1 赋值运算符 ...
- Python学习笔记——基础篇【第一周】——变量与赋值、用户交互、条件判断、循环控制、数据类型、文本操作
目录 Python第一周笔记 1.学习Python目的 2.Python简史介绍 3.Python3特性 4.Hello World程序 5.变量与赋值 6.用户交互 7.条件判断与缩进 8.循环控制 ...
随机推荐
- 【LOJ6513】「雅礼集训 2018 Day10」足球大战(数学题)
点此看题面 大致题意: 已知主队每秒进球概率为\(p\),客队每秒进球概率为\(q\),求主队进球数大于客队的概率. 推式子 考虑枚举主队进球数\(i\),则客队进球数必然小于\(i\),因此可再枚举 ...
- 【洛谷2605】[ZJOI2010] 基站选址(线段树维护DP)
点此看题面 大致题意: 有\(n\)个村庄,每个村庄有\(4\)个属性:\(D_i\)表示与村庄\(1\)的距离,\(C_i\)表示建立基站的费用,\(S_i\)表示能将其覆盖的建基站范围,\(W_i ...
- BestCoder Round #91 1002 Lotus and Horticulture
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6012 题意: 这几天Lotus对培养盆栽很感兴趣,于是她想搭建一个温室来满足她的研究欲望. Lotus ...
- 基于ngx_lua模块的waf开发实践
0x00 常见WAF简单分析 WAF主要分为硬件WAF和软件防火墙,硬件WAF如绿盟的NSFOCUS Web Application Firewall,软件防火墙比较有名的是ModSecurity,再 ...
- 2018.8.5 Bootstrap 使用
Bootstrap的环境搭建 <link rel="stylesheet" type="text/css" href="css/bootstra ...
- OnCollisionEnter和OnTriggerEnter
之前对这两个的用法不是特别清楚,重新学习了下,再做个测试看看效果如何: 1.新建一个场景test 2.添加一个cube,点击Inspector面板会发现系统已经默认添加了Box collisder组件 ...
- 流形(Manifold)初步
原文链接 欧几里得几何学(Euclidean Geometry) 两千三百年前,古希腊数学家欧几里得著成了<几何原本>,构建了被后世称为“欧几里得几何学”的研究图形的方法.欧几里得创立了当 ...
- Spring初始化Bean或销毁Bean前执行操作的方式
如果想在Spring初始化后,或者销毁前做某些操作,常用的设定方式有三种: 第一种:通过 在xml中定义init-method 和 destory-method方法 推荐使用,缺陷是只能在XML中使用 ...
- jQuery与Aiax应用
Ajax(一部JavaScript和XML) 优势: ①不需要插件支持 ②优秀的用户体验:能在不刷新整个页面的前提下更新数据,这使得web应用程序能更为迅速地回应用户的操作. ③提高web程序的性能: ...
- Django之模型(model)中的choices字段的使用
转载自:http://quke.org/post/django-model-choices.html Django模型中的字段有个choices属性,这个属性可以提供被选数据,choices的参数是一 ...