python基础(3)--条件判断循环语句与列表解析,生成器

判断循环语句语法说明:

1,if

if boolean_expression:

...

elif boolean_expression:

...

else

...

2,while

while boolean_expression:

while_suite

if boolean_expression2: continue

if boolean_expression3: break

else:

else_suite

3,for

for expression in object:

for_suite

if boolean_expression2: continue

if boolean_expression3: break

else:

else_suite

while True:

x = raw_input(‘Enter an entry: ‘)

if x == ‘q‘ or x == ‘quit‘:

break

else:

test.append(x)

列表解析和生成器表达式:

两者区别:

1,列表解析使用[],生成器使用()

2,列表解析一次性全部生产,如果数据量大,比较消耗资源,而生成器每次计算一个条目,把这个条目yield出来,效率高,内存消耗少。(和range,xrange类似)

列表解析


实例1:列出/var/log目录下所有.log后缀名的文件

s1=‘hello.log‘

s1.endswith(‘.log‘)     #endswith()函数判断后缀名

True

import os    #加载os模块,有很多

filelist1 = os.listdir(‘/var/log‘)    #os.listdir() 函数列出目录下所有文件

help(str.endswith)     #查看帮助

filelist2 = [i for i in filelist1 if i.endswith(‘.log‘)]

print filelist2

[‘boot.log‘, ‘pm-powersave.log‘, ‘anaconda.yum.log‘, ‘Xorg.0.log‘, ‘anaconda.ifcfg.log‘, ‘Xorg.9.log‘, ‘anaconda.storage.log‘, ‘dracut.log‘, ‘yum.log‘, ‘spice-vdagent.log‘, ‘wpa_supplicant.log‘, ‘anaconda.log‘, ‘anaconda.program.log‘]

实例2:实现l1,l2列表一次相向排序


l1 = [‘x‘,‘y‘,‘z‘]

l2 = [1,2,3]

l3 = [(i,j) for i in l1 for j in l2]

print l3

[(‘x‘, 1), (‘x‘, 2), (‘x‘, 3), (‘y‘, 1), (‘y‘, 2), (‘y‘, 3), (‘z‘, 1), (‘z‘, 2), (‘z‘, 3)]

生成器表达式

语法:

(expr for iter_var in iterable)

(expr for iter_var in iterable if cond_expr)

求幂运算

获取索引和值本身enumerate,此函数可以获取列别索引和值,可以生成字典

url = ‘www.baidu.com

In [84]: en

%env       enumerate

In [84]: enumerate(url)

Out[84]: <enumerate at 0x1eb81e0>

In [85]: g1 = enumerate(url)

In [86]: g1.next()

Out[86]: (0, ‘w‘)

In [87]: g1.next()

Out[87]: (1, ‘w‘)

In [88]: g1.next()

Out[88]: (2, ‘w‘)

In [89]: g1.next()

Out[89]: (3, ‘.‘)

时间: 2024-10-03 18:50:37

python基础(3)--条件判断循环语句与列表解析,生成器的相关文章

第二章 Python基础之条件判断,循环

1.条件判断if   else 如: if age >=18 and scroe <= 100: #py中不使用&标识并集 等于使用== 不等于使用!= print('成年') else:                       #中间可以使用elif 加如其他条件     print ('dd') 2.循环 遍历 迭代 (1)while循环 需要先定义一个计数器,需要有结束的条件,否则会死循环 count =0 while count<20:     print('tian

python基础知识--条件判断和循环

一.输入输出 python怎么来接收用户输入呢,使用input函数,python2中使用raw_input,接收的是一个字符串,输出呢,第一个程序已经写的使用print,代码入下: 1 name=input('Please enter your name:') #把接收到的值赋给name变量 2 print(name)#输出接收到的输入 input在接收输入的时候,是可以看到你输入的值的,如果是输入密码这样的呢,不想让别人看到你的密码,怎么办呢,就需要用到一个标准库,getpass,什么是标准库

python基础之条件判断和循环

1.条件判断 age = 3 if age >= 18: print('adult') elif age >= 6: print('teenager') else: print('kid') elif是else if的缩写,完全可以有多个elif. 2.循环 python循环有两种, 一种是for...in循环,依次把list或者tuple中的每个元素迭代出来. names = ["geg","gege","geege"]; for

第四篇:python基础之条件和循环

阅读目录 一.if语句 1.1 功能 1.2 语法 1.2.1:单分支,单重条件判断 1.2.2:单分支,多重条件判断 1.2.3:if+else 1.2.4:多分支if+elif+else 1.2.5:if语句小结 1.3 案例 1.4 三元表达式 二.while语句 2.1 功能 2.2 语法 2.2.1:基本语法 2.2.2:计数循环 2.2.3:无限循环 2.2.4:while与break,continue,else连用 2.2.5:while语句小结 2.3 案例 三.for语句 3.

Python 基础之条件判断

条件判断 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: age = 20 if age >= 18: print('your age is', age) print('adult') 根据Python的缩进规则,如果if语句判断是True,就把缩进的两行print语句执行了,否则,什么也不做. 也可以给if添加一个else语句,意思是,如果if判断是False,不要执行if的内容,去把else执行

Python基础之条件和循环

阅读目录 一.if语句 1.1功能 1.2语法 1.2.1:单分支,单重条件判断 1.2.2:单分支,多重条件判断 1.2.3:if + else 1.2.4:多分支if + elif +else 1.2.5if语句小结 1.3案例 1.4三元表达式 二.while语句 2.1功能 2.2语法 2.2.1:基本语法 2.2.2:计数循环 2.2.3:计数无限循环 2.2.4:while与break,continue,else连用 2.2.5:while语句小结 2.3:案例 三.for语句 3.

python 基础知识条件和循环

一.if语句 根据不同的条件来执行不同的动作. 语法:主要是有以下4种情况 1.单分支,单条件判断 if 条件: 代码段 (只有条件为真时,才会执行.) 2.单分支,多重条件判断 if 条件1 , 条件2: 代码段 (两个条件组合,返回的为真时,才执行) 3. if + else if 条件(单个或者多重条件): 代码段 else: 代码段(条件不为真时,执行此段代码段) 备注:一个if判断,最多只有一个else 4.if + elif + else if 条件1: 执行代码段1 elif 条件

Python - 基础知识 - 条件判断

1. 简单的if/else条件判断 judge_flow.py name = input("Please input name: ") if name == 'master': print('Hello Master') password = input('Please input password: ') if password == 'abc123': print('Access granted.') else: print('Wrong password!') else: pri

Python基础(9)三元表达式、列表解析、生成器表达式

一.三元表达式 三元运算,是对简单的条件语句的缩写. # if条件语句 if x > f: print(x) else: print(y) # 条件成立左边,不成立右边 x if x > y else y # 三元表达式 python的三元运算格式如下: result=值1 if x<y else 值2 # 如果条件成立,那么将"值1"赋值给result变量,否则,将"值2"赋值给result变量 二.列表解析 列表解析:用三元表达式,将结果写入列