一、函数导入

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学习笔记之条件、循环和其他语句的更多相关文章

  1. python学习笔记2_条件循环和其他语句

    一.条件循环和其他语句 1.print和import的更多信息. 1.1.使用逗号输出  //print() 打印多个表达式是可行的,用逗号隔开.       在脚本中,两个print语句想在一行输出 ...

  2. Python学习笔记五--条件和循环

    5.1 if语句 没什么好说,if语句语法如下: if expression: expr_true_suit 5.1.1多重条件表达式 单个if语句可以通过布尔操作符and,or,not实现多重条件判 ...

  3. Python学习笔记----数据类型 运算符 循环 条件判断

    1. Python安装 在官网www.python.org下载安装程序,可以支持的操作系统linux,windows,mac. Python版本:2.x和3.x,分别有x86和x64. 在Window ...

  4. python 学习笔记3(循环方式;list初始化;循环对象/生成器/表推导;函数对象;异常处理)

    ### Python的强大很大一部分原因在于,它提供有很多已经写好的,可以现成用的对象 16. 循环方式笔记: 1)range(0, 8, 2)   #(上限,下限,步长)  可以实现对元素或者下标的 ...

  5. Python 学习笔记7 条件语句 If

    Python中条件语句if 是通过一条或者多条的执行语句的结果,来判断是否执行其包含的代码块. 通常会配合else.elif一起使用,达到根据条件进行多个代码块的执行操作. 简单的if score = ...

  6. python学习笔记(二)---for循环与操作列表

    内容概要 for循环 range(start,end,step)函数 生成随机数列表 list()函数 将range()的结果整合到某个列表 列表的操作 切片(start: end :step) 元组 ...

  7. Python学习笔记 第二课 循环

    >>> movies=["The Holy Grail", 1975, "The Life of Brian", 1979, "Th ...

  8. Python学习笔记总结(一)对象和流程语句总结

    一.对象类型 1.数字 数字:不可变 2.字符串 字符串:不可原处修改[修改需要创建新的对象],有顺序,支持求长(len),合并(+),重复(*),索引S[0],分片(S[1:3]],成员测试(in) ...

  9. python学习,day1:循环判断基本语句的几个代码

    # coding=utf-8 # Author: RyAn Bi count = 0 '''while True : print('count:',count) count = count + 1 i ...

随机推荐

  1. Scala学习笔记之二--基本数据类型

    前言 本篇主要讲Scala的基本数据类型,更多教程请参考:Scala教程 基本数据类型 Scala一共提供了9中数据类型,Scala的基本数据类型与java中的基本数据类型是一一对应的,这是Scala ...

  2. VS2010 MFC实现启动画面

    1.创建一个SDI工程(或者其他工程都可以). 2.创建一个位图资源命名为IDB_BITMAP1. 3.利用类向导添加一个类CMySplashCtrl(名字可以自己随便取). 4.在MySplashC ...

  3. js Date 关于时间获取问题

    var date1 = new Date(); var timeFormat = { 'yyyy-mm-dd': date1 .toJSON().split('T')[0], //"2017 ...

  4. 简单使用Apache POI

    Apache POI是一个纯Java编写用来操作Microsoft Office的框架,最常见的应用是让服务器后台按照特定的数据生成Excel表格提供给用户实用.前段时间因为项目的需要被大量使用,使用 ...

  5. C语言共用体(Union)

    通过前面的讲解,我们知道结构体(Struct)是一种构造类型或复杂类型,它可以包含多个类型不同的成员.在C语言中,还有另外一种和结构体非常类似的语法,叫做共用体(Union),它的定义格式为: uni ...

  6. 如何将util.Date转化为sql.Date

    通过查看API可以很容易知道,util.Date类时sql.Date的父类,所以根据向上转型的原理可以很简单的知道时可行的,不用做转换都可以. 但是如果想要将util.Date转化为sql.Date, ...

  7. js计算两个日期的差值

    // 获取两个比较值的毫秒数var postman_confirmtime_ms = Date.parse(new Date(data.postman_confirmtime.replace(/-/g ...

  8. 【STL】优先队列priority_queue详解+OpenJudge-4980拯救行动

    一.关于优先队列 队列(queue)这种东西广大OIer应该都不陌生,或者说,队列都不会你还学个卵啊(╯‵□′)╯︵┻━┻咳咳,通俗讲,队列是一种只允许从前端(队头)删除元素.从后端(队尾)插入元素的 ...

  9. AFN设置请求超时时间

    进入AFURLRequestSerialization.m 找到 - (NSMutableURLRequest *)requestWithMethod:(NSString *)method URLSt ...

  10. VB默认属性、动态数组、Range对象的默认属性的一点不成熟的想法

    1.默认属性 VB6.0有默认属性的特性.当没有给对象指定具体的属性时,"默认属性"是VB6.0将使用的属性.在某些情形下,省略常用属性名,使代码更为精简. 因为CommandBu ...