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脚本设置超时机制系统时间的方法
Feb 21 Python
Pyhton中单行和多行注释的使用方法及规范
Oct 11 Python
python3实现ftp服务功能(客户端)
Mar 24 Python
Python上下文管理器和with块详解
Sep 09 Python
Python+request+unittest实现接口测试框架集成实例
Mar 16 Python
Python根据已知邻接矩阵绘制无向图操作示例
Jun 23 Python
Python时间和字符串转换操作实例分析
Mar 16 Python
python制作填词游戏步骤详解
May 05 Python
python异步编程 使用yield from过程解析
Sep 25 Python
在Matplotlib图中插入LaTex公式实例
Apr 17 Python
Python中and和or如何使用
May 28 Python
python lambda的使用详解
Feb 26 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
实用函数4
2007/11/08 PHP
PHP中文乱码解决方案
2015/03/05 PHP
php数组分页实现方法
2016/04/30 PHP
php使用ftp实现文件上传与下载功能
2017/07/21 PHP
PHP receiveMail实现收邮件功能
2018/04/25 PHP
JavaScript Distilled 基础知识与函数
2010/04/07 Javascript
克隆javascript对象的三个方法小结
2011/01/12 Javascript
用jquery统计子菜单的条数示例代码
2013/10/18 Javascript
jQuery 动态云标签插件
2014/11/11 Javascript
javascript中的正则表达式使用详解
2015/08/30 Javascript
javascript+HTML5 Canvas绘制转盘抽奖
2020/05/16 Javascript
Centos7 中 Node.js安装简单方法
2016/11/02 Javascript
详解Nodejs 通过 fs.createWriteStream 保存文件
2017/10/10 NodeJs
详解从买域名到使用pm2部署node.js项目全过程
2018/03/07 Javascript
在layui中layer弹出层点击事件无效的解决方法
2019/09/05 Javascript
浅谈Vue使用Elementui修改默认的最快方法
2020/12/05 Vue.js
[01:34]完美“圣”典宣传片震撼发布,12.17与你不见不散
2016/12/16 DOTA
Python多线程实现同步的四种方式
2017/05/02 Python
Python lambda表达式用法实例分析
2018/12/25 Python
Python中栈、队列与优先级队列的实现方法
2019/06/30 Python
pygame实现俄罗斯方块游戏(基础篇2)
2019/10/29 Python
Python 字典中的所有方法及用法
2020/06/10 Python
StubHub中国:购买和出售全球活动门票
2020/01/01 全球购物
绘画设计学生的个人自我评价
2013/09/20 职场文书
学校创先争优活动总结
2014/08/28 职场文书
欢迎新生标语
2014/10/06 职场文书
办公楼租房协议书范本
2014/11/25 职场文书
大二学年个人总结
2015/03/03 职场文书
物业接待员岗位职责
2015/04/15 职场文书
工程合作意向书范本
2015/05/09 职场文书
2016春季田径运动会广播稿
2015/12/21 职场文书
php微信小程序解包过程实例详解
2021/03/31 PHP
MySQL基础(一)
2021/04/05 MySQL
Pandas-DataFrame知识点汇总
2022/03/16 Python
Vertica集成Apache Hudi重磅使用指南
2022/03/31 Servers
MongoDB修改oplog大小的四种方法
2022/04/11 MongoDB