python中实现循环指定次数:
创新互联公司网络公司拥有十余年的成都网站开发建设经验,上千多家客户的共同信赖。提供网站设计、网站建设、网站开发、网站定制、卖链接、建网站、网站搭建、响应式网站开发、网页设计师打造企业风格,提供周到的售前咨询和贴心的售后服务
count=0
for item in list:
print item
count +=1 if count % 10 == 0:
print 'did ten'
或:
for count in range(0,len(list)):
print list[count] if count % 10 == 0:
print 'did ten'
在Python的for循环里,循环遍历可以写成:
for item in list:
print item
扩展资料:
Python 注意事项:
1、tuple:元组
(1)元组一旦初始化就不可修改。不可修改意味着tuple更安全。如果可能,能用tuple代替list就尽量用tuple。
(2)定义只有一个元素的tuple的正确姿势:t = (1,),括号内添加一个逗号,否则会存在歧义。
2、dict:字典
a.获取value值:dict['key'],若key不存在,编译器就会报错KeyError。避免方法:
一是通过 in 判断 key 值是否在dict中:
'key' in dict # 返回True 或 False。
二是通过 dict 的函数get():
dict.get('key') # 返回 value 值 或 None。
循环用于重复执行一些程序块。从上一讲的选择结构,我们已经看到了如何用缩进来表示程序块的隶属关系。循环也会用到类似的写法。
for循环
for循环需要预先设定好循环的次数(n),然后执行隶属于for的语句n次。
基本构造是
for 元素 in 序列:
statement
举例来说,我们编辑一个叫forDemo.py的文件
for a in [3,4.4,'life']:
print a
这个循环就是每次从表[3,4.4,'life'] 中取出一个元素(回忆:表是一种序列),然后将这个元素赋值给a,之后执行隶属于for的操作(print)。
介绍一个新的Python函数range(),来帮助你建立表。
idx = range(5)
print idx
可以看到idx是[0,1,2,3,4]
这个函数的功能是新建一个表。这个表的元素都是整数,从0开始,下一个元素比前一个大1, 直到函数中所写的上限 (不包括该上限本身)
(关于range(),还有丰富用法,有兴趣可以查阅, Python 3中, range()用法有变化,见评论区)
举例
for a in range(10):
print a**2
while循环
while的用法是
while 条件:
statement
while会不停地循环执行隶属于它的语句,直到条件为假(False)
举例
while i 10:
print i
i = i + 1
中断循环
continue # 在循环的某一次执行中,如果遇到continue, 那么跳过这一次执行,进行下一次的操作
break # 停止执行整个循环
for i in range(10):
if i == 2:
continue
print i
当循环执行到i = 2的时候,if条件成立,触发continue, 跳过本次执行(不执行print),继续进行下一次执行(i = 3)。
for i in range(10):
if i == 2:
break
print i
当循环执行到i = 2的时候,if条件成立,触发break, 整个循环停止。
编写循环的技巧,for循环包含了常见的计数器式循环。由于通常for循环比while循环更容易写,也执行得更快,所以for循环一般是你遍历序列或其他可迭代对象时的首选。事实上,作为一条通用法则,你应该克制在Python中使用计数方式的诱惑——Python提供的迭代工具,能帮你把像C这样低级语言中循环集合体的工作自动化。不过,有些情况下你还是需要以更为特定的方式进行迭代。例如,如果你需要在列表中每隔一个元素或每隔两个元素进行访问,或是要同时修改列表呢?如果在同一个for循环内,并行遍历一个以上的序列呢?如果你也需要进行索引呢?
你总是可以用while循环和手动索引运算来编写这些独特的循环,但是python提供了一套内置函数,可以帮你在for循环内定制迭代:·内置函数range (Python 0.X及之后版本可用)返回一系列连续增加的整数,可作为for中的索引。内置函数zip (Python 2.0及之后版本可用)返回一系列并行元素的元组,可用于在for中内遍历多个序列。内置函数enumerate (Python 2.3及之后版本可用)同时生成可迭代对象中元素的值和索引,因而我们不必再手动计数。内置函数map (Python 1.0及之后版本可用)在Python 2.X中与zip有着相似的效果,但是在3.X中 map 的这一角色被移除了。因为for循环可能会比基于while的计数器循环运行得更快,所以借助这些工具并尽可能地使用for循环,会让你受益匪浅。让我们在常见的使用场景下,依次看一看这些内置函数吧。我们将会看到,它们的用法在Python 2.X和3.X中稍有不同,同时它们中的一些要比其他的更加有效。
for 变量 in range(次数):被执行的语句 变量:表示每次循环的次数,0-1之间
range(n)n表示产生0到n-1的整数序列共N个 range(m,n) 产生m到n-1的整数序列,共n-m个
循环for语句 :for 循环变量 in遍历结构:语句体1 else:语句体2
无限循环: while条件: 语句块
while 条件:语句体1 else: 语句体2
循环保留字:break continue
方法1:from random import random
from time import perf_counter
DARTS=1000
hits=0.0
start =perf_counter()
for i in range(1,DARTS+1):
x,y=random(),random()
dist=pow(x**2+y**2,0.5)
if dist=1.0:
hits =hits+1
pi=4*(hits/DARTS)
print("圆周率是:{}".format(pi))
print("运行时间是{:.5f}s".format(perf_counter()-start))
方法2:
pi=0
n=100
for k in range(n):
pi += 1/pow(16,k)*(\
4/(8*k+1)-2/(8*k+4) - \
1/(8*k+5) - 1/(8*k+6))
print("圆周率值是:{}".format(pi))
def 函数名 (0个或者多个):函数体 renturn 返回值
def 函数名 (非可选参数,可选参数):函数体 renturn 返回值
参数传递的两种方式:位置传递,名称传递
科赫雪花:
import turtle
def koch(size,n):
if n==0:
turtle.fd(size)
else:
for angle in [0,60,-120,60]:
turtle.left(angle)
koch(size/3,n-1)
def main():
turtle.setup(400,200)
turtle.penup()
turtle.pendown()
turtle.pensize(2)
l=3
koch(600,l)
turtle.right(120)
turtle.pencolor('blue')
koch(600,l)
turtle.right(120)
turtle.pencolor('red')
koch(600,l)
turtle.speed(3000)
turtle.hideturtle()
main()
阶乘:
def fact(n):
s=1
for i in range(1,n+1):
s*=i
return s
c=eval(input("从键盘输入一个数字"))
print("阶乘结果",fact(c))