python 表达式和语句及for、while循环练习实例


Posted in Python onJuly 07, 2017

Python中表达式和语句及for、while循环练习

1)表达式

常用的表达式操作符:
x + y, x - y
x * y, x / y, x // y, x % y

逻辑运算:
x or y, x and y, not x

成员关系运算:
x in y, x not in y

对象实例测试:
x is y, x not is y

比较运算:
x < y, x > y, x <= y, x >= y, x == y, x != y

位运算:
x | y, x & y, x ^ y, x << y, x >> y

一元运算:
-x, +x, ~x:

幂运算:
x ** y

索引和分片:
x[i], x[i:j], x[i:j:stride]

调用:
x(...)

取属性:
  x.attribute

元组:(...)
序列:[...]
字典:{...}

三元选择表达式:x if y else z

匿名函数:lambda args: expression

生成器函数发送协议:yield x

 运算优先级:
(...), [...], {...}
s[i], s[i:j]
s.attribute
s(...)
+x, -x, ~x
x ** y
*, /, //, %
+, -
<<, >> 
&
^
|
<, <=, >, >=, ==, !=
is, not is
in, not in
not
and
or
lambda

2)语句:

赋值语句

  调用
  print: 打印对象
  if/elif/else: 条件判断
  for/else: 序列迭代
  while/else: 普通循环
  pass: 占位符
  break: 
  continue
  def
  return
  yield
  global: 命名空间
  raise: 触发异常
  import: 
  from: 模块属性访问
  class: 类
  try/except/finally: 捕捉异常
  del: 删除引用
  assert: 调试检查
  with/as: 环境管理器
  
赋值语句:

  隐式赋值:import, from, def, class, for, 函数参数

  元组和列表分解赋值:当赋值符号(=)的左侧为元组或列表时,Python会按照位置把右边的对象和左边的目标自左而右逐一进行配对儿;个数不同时会触发异常,此时可以切片的方式进行;

  多重目标赋值

  增强赋值: +=, -=, *=, /=, //=, %=,

3)for循环练习

练习1:逐一分开显示指定字典d1中的所有元素,类似如下
k1 v1
k2 v2
...
  
  >>> d1 = { 'x':1,'y':2,'z':3,'m':4 }
  >>> for (k,v) in d1.items():
  print k,v 
  y 2
  x 1
  z 3
  m 4
  
  练习2:逐一显示列表中l1=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]中的索引为奇数的元素;
  
  >>> l1 = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]
  >>> for i in range(1,len(l1),2):
  print l1[i]
  
  Mon
  Wed
  Fri
  
  练习3:将属于列表l1=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],但不属于列表l2=["Sun","Mon","Tue","Thu","Sat"]的所有元素定义为一个新列表l3; 
  
  >>> l1 = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]
  >>> l2 = ["Sun","Mon","Tue","Thu","Sat"]
  >>> l3 = [ ]
  >>> for i in l1:
  if i not in l2:
l3.append(i)
  >>> l3
  ['Wed', 'Fri']
  
   练习4:已知列表namelist=['stu1','stu2','stu3','stu4','stu5','stu6','stu7'],删除列表removelist=['stu3', 'stu7', 'stu9'];请将属于removelist列表中的每个元素从namelist中移除(属于removelist,但不属于namelist的忽略即可);
   
  >>> namelist= ['stu1','stu2','stu3','stu4','stu5','stu6','stu7']
  >>> removelist = ['stu3', 'stu7', 'stu9']  
  >>> for i in namelist:
  if i in removelist :
namelist.remove(i)
  >>> namelist
  ['stu1', 'stu2', 'stu4', 'stu5', 'stu6']

4)while循环练习

练习1:逐一显示指定列表中的所有元素;

  >>> l1 = [1,2,3,4,5]
  >>> i = 0
  >>> while i < len(l1)
  print l1[i]
  i += 1
  
  1
  2
  3
  4
  5

  >>> l1 = [1,2,3,4,5]
  >>> while l1:
  print l1.pop(0)
  
  1
  2
  3
  4
  5
  
练习2:求100以内所有偶数之和;
  
  >>> i = 0
  >>> sum = 0 
  >>> while i < 101:
  sum += i
  i += 2
print sum
  
  2550
  
  >>> for i in range(0,101,2):
  sum+=i  
 print sum
  
  2550
  
    练习3:逐一显示指定字典的所有键;并于显示结束后说明总键数;
    
  >>> d1 = {'x':1, 'y':23, 'z': 78}
  >>> i1 = d1.keys()
  >>> while i1:
  print i1.pop(0)
else:
  print len(d1)
  x
  y
  z
  3

    练习4:创建一个包含了100以内所有奇数的列表;
    
  >>> d1 = [ ]
  >>> i = 1
  >>> while i < 101:
  d1.append(i)
  i+=2
  >>> print d1
  [1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, 97, 99]  
  
  >>> d1 = [ ] 
  >>> for i in range(1,101,2)
  d1.append(i)
  >>> print d1
  [1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, 97, 99]
  
练习5:列表l1=[0,1,2,3,4,5,6], 列表l2=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],以第一个列表中的元素为键,以第二个列表中的元素为值生成字典d1;
   
  >>> l1 = [0,1,2,3,4,5,6] 
  >>> l2 = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]
  >>> d1 = {}
  >>> count = 0
  >>> if len(l1) == len(l2):
  while count < len(l1):
d1[l1[count]] = l2[count] 
count += 1

以上这篇python 表达式和语句及for、while循环练习实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python编程羊车门问题代码示例
Oct 25 Python
uwsgi+nginx部署Django项目操作示例
Dec 04 Python
解决项目pycharm能运行,在终端却无法运行的问题
Jan 19 Python
Python2和Python3的共存和切换使用
Apr 12 Python
python实现nao机器人手臂动作控制
Apr 29 Python
python实现图片转字符小工具
Apr 30 Python
使用Python的OpenCV模块识别滑动验证码的缺口(推荐)
May 10 Python
聊聊python里如何用Borg pattern实现的单例模式
Jun 06 Python
Django中的cookie和session
Aug 27 Python
python实现KNN分类算法
Oct 16 Python
python正则表达式re.match()匹配多个字符方法的实现
Jan 27 Python
Opencv中cv2.floodFill算法的使用
Jun 18 Python
Python中字典和集合学习小结
Jul 07 #Python
使用python实现接口的方法
Jul 07 #Python
python函数中return后的语句一定不会执行吗?
Jul 06 #Python
不可错过的十本Python好书
Jul 06 #Python
使用pyecharts在jupyter notebook上绘图
Apr 23 #Python
windows下python安装paramiko模块和pycrypto模块(简单三步)
Jul 06 #Python
python下setuptools的安装详解及No module named setuptools的解决方法
Jul 06 #Python
You might like
关于PHP递归算法和应用方法介绍
2013/04/15 PHP
PHP获取当前日期所在星期(月份)的开始日期与结束日期(实现代码)
2013/06/18 PHP
php阻止页面后退的方法分享
2014/02/17 PHP
PHP分页类集锦
2014/11/18 PHP
浅析PHP中的i++与++i的区别及效率
2016/06/15 PHP
PDO::query讲解
2019/01/29 PHP
laravel多条件查询方法(and,or嵌套查询)
2019/10/09 PHP
HTML代码中标签的全部属性 中文注释说明
2009/03/26 Javascript
Javascript常考语句107条收集
2010/03/09 Javascript
javascript new fun的执行过程
2010/08/05 Javascript
jquery的冒泡事件的阻止与允许(三种实现方法)
2013/02/01 Javascript
jquery弹出框的用法示例(2)
2013/08/26 Javascript
jquery、js操作checkbox全选反选
2014/03/12 Javascript
Javscript调用iframe框架页面中函数的方法
2014/11/01 Javascript
jQuery实现统计输入文字个数的方法
2015/03/11 Javascript
Jquery1.9.1源码分析系列(六)延时对象应用之jQuery.ready
2015/11/24 Javascript
Iscrool下拉刷新功能实现方法(推荐)
2017/06/26 Javascript
实例教学如何写vue插件
2017/11/30 Javascript
Vue中保存数据到磁盘文件的方法
2018/09/06 Javascript
jQuery实现全选、反选和不选功能的方法详解
2019/12/04 jQuery
Win7上搭建Cocos2d-x 3.1.1开发环境
2014/07/03 Python
python学习笔记之列表(list)与元组(tuple)详解
2017/11/23 Python
python2 与python3的print区别小结
2018/01/16 Python
Python实现获取nginx服务器ip及流量统计信息功能示例
2018/05/18 Python
Python多线程threading模块用法实例分析
2019/05/22 Python
Manuka Doctor英国官网:真正的麦卢卡蜂蜜和护肤品
2018/10/26 全球购物
美德好少年事迹材料
2014/01/19 职场文书
修理厂厂长岗位职责
2014/01/30 职场文书
《最可爱的人》教学反思
2014/02/14 职场文书
网络编辑职责
2014/03/01 职场文书
小学毕业演讲稿
2014/04/25 职场文书
和谐家庭事迹材料
2014/12/20 职场文书
五年级上册复习计划
2015/01/19 职场文书
JavaScript中10个Reduce常用场景技巧
2022/06/21 Javascript
Go 内联优化让程序员爱不释手
2022/06/21 Golang
webpack介绍使用配置教程详解webpack介绍和使用
2022/06/25 Javascript