Python学习笔记之条件、循环和其他语句
一、函数导入
1、为模块提供别名
>>> import math as foobar #设置math 别名为foobar
>>> foobar.sqrt(4)
显示:2.0
2、为函数提供别名
>>> from math import sqrt as foobar
>>> foobar(4)
显示:2.0
二、赋值
1、多值赋值
>>> x,y,z=1,2,3
>>> print(x,y,z)
显示:1,2,3
2、多值交换
>>> x,y=y,x
>>> print(x,y,z)
显示:2,1,3
3、增量赋值
>>> x=2
>>> x+=1
>>> x*=2
>>> x
显示:6
三、条件执行和if语句
1、if嵌套代码
>>> name=input('What is your name? ')
>>> if name.endswith('Gumby'):
>>> if name.startswith('Mr.'):
>>> print('Hello, Mr. Gumby')
>>> elif name.startswith('Mrs.')
>>> print('Hello, Mrs. Gumby')
>>> else:
>>> print('Hello, Gumby')
>>> else:
>>> print('Hello,stranger')
2、is,同一性运算符,和==相似,但事实上不一样
>>> x=y=[1,2,3]
>>> z=[1,2,3]
>>> x==y
显示:True
>>> x==z
显示:True
>>> x is y
显示:True
>>> x is z
显示:False
3、in,成员资格运算符
>>> if 's' in name:
>>> print('Your name contains the letter "s".')
>>> else:
>>> print('Your name does not contain the letter "s".')
4、assert,断言
>>>age=-1
>>> assert 0<age<100, 'The age must be realistic'
显示:AssertionError:The age must be realistic
5、while循环
>>> x=1
>>> while x<= 100:
>>> print(x)
>>> x+=1
6、for循环
>>> numbers=[0,1,2,3,4,5,6,7]
>>> for number in numbers:
>>> print(number)
7、循环遍历字典元素
>>> d={'x':1,'y':2,'z':3}
>>> for key in d
>>> print(key,'corresponds to',d[key])
显示: z corresponds to 1
>>> for key,value in d.items():
>>> print(key,'corresponds to',value)
8、并行迭代
>>> names=['anne','beth','george','damon']
>>> ages=[12,45,32,102]
>>> for i in range(len(names)):
>>> print(names[i],'is',ages[i],'years old')
采用内建zip来实现上述功能
>>> zip(names,ages)
>>> for name,age in zip(names,ages)
>>> print(name,'is',age,'years old')
9、翻转和排序迭代
>>> sorted([4,3,6,8,3]) #排序
显示:[3,3,4,6,8]
>>> sorted('Hello,world!')
显示:[' ','!',',','H','d','e','l','l','l','o','o','r','w']
>>> list(reversed('Hello,world!'))
显示:['!','d','l','r','o','w',' ',',','o','l','l','e','H']
>>> ' '.joing(reversed('Hello, world!'))
显示:'!dlrow,olleH'
10、跳出循环
>>> from math import sqrt
>>> for n in range(99,0,-1):
>>> root=sqrt(n)
>>> if root==int(root):
>>> print(n)
>>> break
显示:81
11、列表推导式,是利用其他列表创建新列表
>>> [x*x for x in range(10)]
显示:[0,1,4,9,16,25,36,49,64,91]
获取能被3整除的
>>> [x*x for x in range(10) if x % 3 ==0]
显示:[0,9,36,91]
更优推导式
>>> girls=['alice','bernice','clarice']
>>> boys=['charis','arnold','bob']
>>> letterGirls={}
>>> for girl in girls:
>>> letterGrils.setdefault(girl[0],[]).append(girl)
>>> print([b+'+'+g for b in boys for g in letterGirls[b[0]]])
显示:['charis+clarice','arnold+alice','bob+bernice']
12、占位
>>> if name=='Ralph Auldus Melish':
>>> print('Welcome!')
>>> elif name=='Enid':
>>> pass #占位
>>> elif name=='Bill Gates':
>>> print('Access Denied')
13、exec执行
>>> from math import sqrt
>>> scope={}
>>> exec('sqrt=1',scope)
>>> sqrt(4)
显示:2
>>> scope['sqrt']
显示:1
14、eval用于求值
>>> eval(input('Enter an arithmetic expression: '))
Enter an arithmetic expression: 6+18*2
显示:42
Python学习笔记之条件、循环和其他语句的更多相关文章
- python学习笔记2_条件循环和其他语句
一.条件循环和其他语句 1.print和import的更多信息. 1.1.使用逗号输出 //print() 打印多个表达式是可行的,用逗号隔开. 在脚本中,两个print语句想在一行输出 ...
- Python学习笔记五--条件和循环
5.1 if语句 没什么好说,if语句语法如下: if expression: expr_true_suit 5.1.1多重条件表达式 单个if语句可以通过布尔操作符and,or,not实现多重条件判 ...
- Python学习笔记----数据类型 运算符 循环 条件判断
1. Python安装 在官网www.python.org下载安装程序,可以支持的操作系统linux,windows,mac. Python版本:2.x和3.x,分别有x86和x64. 在Window ...
- python 学习笔记3(循环方式;list初始化;循环对象/生成器/表推导;函数对象;异常处理)
### Python的强大很大一部分原因在于,它提供有很多已经写好的,可以现成用的对象 16. 循环方式笔记: 1)range(0, 8, 2) #(上限,下限,步长) 可以实现对元素或者下标的 ...
- Python 学习笔记7 条件语句 If
Python中条件语句if 是通过一条或者多条的执行语句的结果,来判断是否执行其包含的代码块. 通常会配合else.elif一起使用,达到根据条件进行多个代码块的执行操作. 简单的if score = ...
- python学习笔记(二)---for循环与操作列表
内容概要 for循环 range(start,end,step)函数 生成随机数列表 list()函数 将range()的结果整合到某个列表 列表的操作 切片(start: end :step) 元组 ...
- Python学习笔记 第二课 循环
>>> movies=["The Holy Grail", 1975, "The Life of Brian", 1979, "Th ...
- Python学习笔记总结(一)对象和流程语句总结
一.对象类型 1.数字 数字:不可变 2.字符串 字符串:不可原处修改[修改需要创建新的对象],有顺序,支持求长(len),合并(+),重复(*),索引S[0],分片(S[1:3]],成员测试(in) ...
- python学习,day1:循环判断基本语句的几个代码
# coding=utf-8 # Author: RyAn Bi count = 0 '''while True : print('count:',count) count = count + 1 i ...
随机推荐
- window7下安装第三方包报错及解决
window7 64位下安装第三方包,,比如安装yaml的exe执行文件,会 报错及解决:python version 2.7(3.4) required,which was not found in ...
- c++ 面试注意的问题
1.输入数据合法性检查 2.变量命名 3.边界数据的检查 4.函数名,递归的思想[尤其是树.链表] 企业喜欢的人:聪明 努力 基础好 面试时不要主动请求提示,做题要大胆地想,及时与面试官沟通,防止想很 ...
- Codeforces 747C:Servers(模拟)
http://codeforces.com/problemset/problem/747/C 题意:有n台机器,q个操作.每次操作从ti时间开始,需要ki台机器,花费di的时间.每次选择机器从小到大开 ...
- webpack react基础配置一
简单介绍webpack react基本配置,入门型: 环境配置: 依赖nodejs,官网下载最新版的nodejs:nodejs.org/en 安装完nodejs npm便自动集成了,通过npm安装其 ...
- python 学习随笔
要求: 用户输入一个数,比如输入387. 需要把387打乱,然后将这三个数组合成最大数输出. 如果最大值和用户输入的等大,输出-1. 方法一: #!/user/bin/env python # _*_ ...
- Android 本地/网路下载图片实现放大缩小
Android 本地加载/网路下载图片实现放大缩小拖拉效果,自定义控件. package com.example.ImageViewCustom; import android.app.Activi ...
- linux中断处理原理分析
Tasklet作为一种新机制,显然可以承担更多的优点.正好这时候SMP越来越火了,因此又在tasklet中加入了SMP机制,保证同种中断只能在一个cpu上执行.在软中断时代,显然没有这种考虑.因此同一 ...
- python网络编程-socket
python提供了两个socket模块 Socket,它提供了标准的BSD Sockets API SocketServer,它提供了服务器中心类,可以简化网络服务器的开发 下面先说socket模块 ...
- UI控件封装一般步骤
封装 如果一个view内部的子控件比较多,一般会考虑自定义一个view,把它内部的子控件的创建屏蔽起来,不让外界关心 外界可以传入对应的模型数据给view,view拿到模型数据后给内部的子控件设置对应 ...
- smarty模板引擎
1. 使用smarty 1.1 项目引入 // 3, 连接数据库,提取相关数据 $title = "Smarty模板引擎"; $content = "Smarty模 ...