1.enumerate:返回2个值,1是当前的for循环的第几轮,2是循环得到的数值

enumerate works by supplying a corresponding index to each element in the list that you pass it. Each time you go through the loop, index will be one greater, and item will be the next item in the sequence.

choices = ['pizza', 'pasta', 'salad', 'nachos']

print 'Your choices are:'
for index, item in enumerate(choices):
print index+1, item

运行结果如下:

Your choices are:
1 pizza
2 pasta
3 salad
4 nachos
None

2.zip:根据最小的列表,pairs它们

It's also common to need to iterate over two lists at once. This is where the built-in zip function comes in handy.

zip will create pairs of elements when passed two lists, and will stop at the end of the shorter list.zip can handle three or more lists as well!

例子:

list_a = [3, 9, 17, 15, 19]
list_b = [2, 4, 8, 10, 30, 40, 50, 60, 70, 80, 90] for a, b in zip(list_a, list_b):
# Add your code here!
if a >= b:
print a
else:
print b

第一组得到a=3 b=2 输出3,第二组得到a=9 b=4 输出9。。。以此类推。

3.For / else:for里面有break时,else的内容不执行。

In this case, the else statement is executed after the for, but only if the for ends normally—that is, not with a break. This code will break when it hits 'tomato', so the else block won't be executed.

fruits = ['banana', 'apple', 'orange', 'tomato', 'pear', 'grape']

print 'You have...'
for f in fruits:
if f == 'tomato':
print 'A tomato is not a fruit!' # (It actually is.)
break
print 'A', f
else:
print 'A fine selection of fruits!'

ps:小练习题:

1.验证一个数是整数:

def is_int(x):
if int(x) == x:
return True
else:
return False

2.将类似于1234的数值加起来:1+2+3+4 = 10

方法1:转换为字符,将数字一个个取出来

def digit_sum(n):
s = str(n)
sum = 0
for s1 in s:
sum += int(s1)
return sum

方法2:使用%和/得到一个个数字

def digit_sum(n):
sum = 0
while n > 0:
sum += (n % 10)
n = int(n / 10)
return sum

3.迭代计算阶乘

def factorial(x):
f = 1
while x > 1:
f = f * x
x -= 1
return f

4.判断是否是质数

def is_prime(x):
if x == 1:
return False
elif x == 2:
return True
else:
s = 2
while s != x:
if x % s == 0:
return False
s += 1
else:
return True

5.倒序输出一个字符串:

def reverse(text):
s = ""
for i in range(0,len(text)):
a = text[len(text) -1 - i]
s = s + a
return s

6.返回输入列表中不重复的内容:

def remove_duplicates(list):
s = []
for i in list:
if i not in s:
s.append(i)
return s

7.返回一个列表里的中值:

def median(list):
list_sorted = sorted(list)
length = len(list_sorted)
print list_sorted
if length % 2 == 0:
return float(list_sorted[length/2 - 1] + list_sorted[length/2])/2
else:
return list_sorted[length/2]

python关于for循环的几个函数的更多相关文章

  1. Python语言的循环语句、迭代器与生成器、函数学习

    while循环语句 无限循环 我们可以通过设置条件表达式永远不为false来实现无限循环,实例如下: for语句 Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串 Python ...

  2. python基础之循环结构以及列表

    python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.python IDE的选择 IDE的全称叫做集成 ...

  3. Python进阶05 循环设计

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在"循环"一节,我们已经讨论了Python基本的循环语法.这一 ...

  4. 第五篇:python基础之循环结构以及列表

    python基础之循环结构以及列表   python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.pyth ...

  5. Python编程核心内容之一——Function(函数)

    Python版本:3.6.2  操作系统:Windows  作者:SmallWZQ 截至上篇随笔<Python数据结构之四--set(集合)>,Python基础知识也介绍好了.接下来准备干 ...

  6. Python编程从入门到实践笔记——函数

    Python编程从入门到实践笔记——函数 #coding=gbk #Python编程从入门到实践笔记——函数 #8.1定义函数 def 函数名(形参): # [缩进]注释+函数体 #1.向函数传递信息 ...

  7. Python进阶:函数式编程(高阶函数,map,reduce,filter,sorted,返回函数,匿名函数,偏函数)...啊啊啊

    函数式编程 函数是Python内建支持的一种封装,我们通过把大段代码拆成函数,通过一层一层的函数调用,就可以把复杂任务分解成简单的任务,这种分解可以称之为面向过程的程序设计.函数就是面向过程的程序设计 ...

  8. (转)Python进阶:函数式编程(高阶函数,map,reduce,filter,sorted,返回函数,匿名函数,偏函数)

    原文:https://www.cnblogs.com/chenwolong/p/reduce.html 函数式编程 函数是Python内建支持的一种封装,我们通过把大段代码拆成函数,通过一层一层的函数 ...

  9. 【python】Python3 循环语句

    [python]几种常见的循环 注意:如果涉及到程序中print语句中含有%d,%s,那么要在脚本最开始写语句:#coding=utf-8,才能够正常输出想要的数字或者字符串. Python3 循环语 ...

随机推荐

  1. Android设计中的.9.png与Android Studio中的设置

    在Android的设计过程中,为了适配不同的手机分辨率,图片大多需要拉伸或者压缩,这样就出现了可以任意调整大小的一种图片格式“.9.png”.这种图片是用于Android开发的一种特殊的图片格式,它的 ...

  2. 将单词首字母大写的JS脚本工具

    <html> <head> <title>首字母全改为大写JS脚</title> <SCRIPT LANGUAGE="JavaScrip ...

  3. HP-UX查看版本

    首先采用uname -a查看服务器类型 $ uname -a    HP-UX WEBDB1 B.11.31 U ia64 0749665296 unlimited-user license 服务器的 ...

  4. 在phpmyadmin后台获取webshell方法汇总整理

    方法一: CREATE TABLE `mysql`.`xiaoma` (`xiaoma1` TEXT NOT NULL ); INSERT INTO `mysql`.`xiaoma` (`xiaoma ...

  5. Qt多线程(有详细例子)

    Qt线程类 Qt 包含下面一些线程相关的类:QThread 提供了开始一个新线程的方法QThreadStorage 提供逐线程数据存储QMutex  提供相互排斥的锁,或互斥量QMutexLocker ...

  6. Python语法

  7. [置顶] 初识window.location.search

    window.location.search是从当前URL的?号开始的字符串 如:http://www.domain.com/item?id=0064014 它的search就是?id=0064014

  8. [置顶] android开发之来电自动拒接并自动回复短信_上课模式app

    上课的时候老师说总是错过电话,对方打来没人接还一遍遍的打,觉得可以有个app在上课期间自动拒接电话,并自动回复短信过去. 当然了,需要权限的. 尝试做了个雏形出来. 界面如下: 主要代码如下: pac ...

  9. 看来IT技术与军事技术都是相通的——都是对新事物极为敏感的领域

    这是读到这段时候的感想: 和海军中那些狂热的相信“皇军不可战胜”的大舰巨炮主义者们不同,山口对于与美国开战的主张是持坚定的反对态度的,和山本五十六都做过日本驻美武官的山口都认为一旦与美开战,日本或许能 ...

  10. java学习笔记12--国际化

    java学习笔记12--国际化 国际化的操作就是指一个程序可以同时适应多门语言,即:如果现在程序者是中国人,则会以中文为显示文字,如果现在程序的使用者是英国人,则会以英语为显示的文字,也就是说可以通过 ...