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的Django框架测试驱动开发的教程
Apr 22 Python
Python制作简易注册登录系统
Dec 15 Python
Python实现的文本简单可逆加密算法示例
May 18 Python
Pipenv一键搭建python虚拟环境的方法
May 22 Python
python3模块smtplib实现发送邮件功能
May 22 Python
Python代码实现http/https代理服务器的脚本
Aug 12 Python
python中threading开启关闭线程操作
May 02 Python
Python tkinter实现简单加法计算器代码实例
May 13 Python
python Xpath语法的使用
Nov 26 Python
python如何实现递归转非递归
Feb 25 Python
python 使用Tensorflow训练BP神经网络实现鸢尾花分类
May 12 Python
python opencv旋转图片的使用方法
Jun 04 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
德生PL450的电路分析和低放电路的改进办法
2021/03/02 无线电
提高PHP编程效率 引入缓存机制提升性能
2010/02/15 PHP
php &amp;&amp; 逻辑与运算符使用说明
2010/03/04 PHP
php join函数应用
2011/05/04 PHP
php在程序中将网页生成word文档并提供下载的代码
2012/10/09 PHP
PHP实现双链表删除与插入节点的方法示例
2017/11/11 PHP
Thinkphp5 如何隐藏入口文件index.php(URL重写)
2019/10/16 PHP
js操作select控件的几种方法
2010/06/02 Javascript
node.js 一个简单的页面输出实现代码
2012/03/07 Javascript
javascipt基础内容--需要注意的细节
2013/04/10 Javascript
使用JavaScript 实现对象 匀速/变速运动的方法
2013/05/08 Javascript
jQuery实现防止提交按钮被双击的方法
2015/03/24 Javascript
基于jQuery日历插件制作日历
2016/03/11 Javascript
bootstrap Table插件使用demo
2017/08/07 Javascript
探究react-native 源码的图片缓存问题
2017/08/24 Javascript
tracking.js页面人脸识别插件使用方法
2020/04/16 Javascript
Servlet返回的数据js解析2种方法
2019/12/12 Javascript
[54:29]2018DOTA2亚洲邀请赛 4.7 淘汰赛 VP vs LGD 第二场
2018/04/09 DOTA
[01:13:51]TNC vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python读写ini文件示例(python读写文件)
2014/03/25 Python
python网络编程学习笔记(三):socket网络服务器
2014/06/09 Python
Python入门教程之if语句的用法
2015/05/14 Python
Python类装饰器实现方法详解
2018/12/21 Python
Python实战购物车项目的实现参考
2019/02/20 Python
pycharm实现在子类中添加一个父类没有的属性
2020/03/12 Python
python实现UDP协议下的文件传输
2020/03/20 Python
纯CSS3实现的8种Loading动画效果
2014/07/05 HTML / CSS
英国时尚高尔夫服装购物网站:Trendy Golf
2020/01/10 全球购物
同学聚会欢迎辞
2014/01/14 职场文书
银行委托书范本
2014/04/04 职场文书
2014年酒店服务员工作总结
2014/12/08 职场文书
2015年元旦主持词结束语
2014/12/14 职场文书
2014年结对帮扶工作总结
2014/12/17 职场文书
清明节扫墓活动总结
2015/02/09 职场文书
2015年财政所工作总结
2015/04/25 职场文书
文艺演出主持词
2015/07/01 职场文书