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 相关文章推荐
教你如何在Django 1.6中正确使用 Signal
Jun 22 Python
python连接字符串的方法小结
Jul 13 Python
Python中生成Epoch的方法
Apr 26 Python
Python实现的栈(Stack)
Jan 26 Python
PyCharm的设置方法和第一个Python程序的建立
Jan 16 Python
python3编写ThinkPHP命令执行Getshell的方法
Feb 26 Python
Python嵌套式数据结构实例浅析
Mar 05 Python
python GUI库图形界面开发之PyQt5浏览器控件QWebEngineView详细使用方法
Feb 26 Python
pycharm新建Vue项目的方法步骤(图文)
Mar 04 Python
python3 配置logging日志类的操作
Apr 08 Python
解决keras GAN训练是loss不发生变化,accuracy一直为0.5的问题
Jul 02 Python
python神经网络ResNet50模型
May 06 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实现用户在线时间统计详解
2011/10/08 PHP
PHP面向对象五大原则之开放-封闭原则(OCP)详解
2018/04/04 PHP
php5.6.x到php7.0.x特性小结
2019/08/17 PHP
AeroWindow 基于JQuery的弹出窗口插件
2011/06/27 Javascript
JavaScript中的onerror事件概述及使用
2013/04/01 Javascript
判断iframe里的页面是否加载完成
2014/06/06 Javascript
js不能获取隐藏的div的宽度只能先显示后获取
2014/09/04 Javascript
JQuery中使文本框获得焦点的方法实例分析
2015/02/28 Javascript
使用struts2+Ajax+jquery验证用户名是否已被注册
2016/03/22 Javascript
jQuery+CSS实现简单切换菜单示例
2016/07/27 Javascript
JS新包管理工具yarn和npm的对比与使用入门
2016/12/09 Javascript
JS实现移动端判断上拉和下滑功能
2017/08/07 Javascript
VueJs组件prop验证简单介绍
2017/09/12 Javascript
vue根据值给予不同class的实例
2018/09/29 Javascript
Koa日志中间件封装开发详解
2019/03/09 Javascript
JS数组Object.keys()方法的使用示例
2019/06/05 Javascript
weui中的picker使用js进行动态绑定数据问题
2019/11/06 Javascript
nuxt引入组件和公共样式的操作
2020/11/05 Javascript
jquery自定义组件实例详解
2020/12/31 jQuery
[03:47]2015国际邀请赛第三日现场精彩回顾
2015/08/08 DOTA
[01:15:29]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第三局
2016/03/04 DOTA
玩转python爬虫之爬取糗事百科段子
2016/02/17 Python
恢复百度云盘本地误删的文件脚本(简单方法)
2017/10/21 Python
K-近邻算法的python实现代码分享
2017/12/09 Python
Django中提示消息messages的设置方式
2019/11/15 Python
pytorch torchvision.ImageFolder的用法介绍
2020/02/20 Python
HTML5 WebGL 实现民航客机飞行监控系统
2019/07/25 HTML / CSS
HTML5 通信API 跨域门槛将不再高、数据推送也不再是梦
2013/04/25 HTML / CSS
美国购物网站:Clickhere2shop
2021/01/28 全球购物
在职人员函授期间自我评价分享
2013/11/08 职场文书
地理科学专业自荐信
2014/09/01 职场文书
交通违章检讨书
2014/09/21 职场文书
工作检讨书怎么写
2014/10/10 职场文书
升职感谢领导的话语及升职感谢信
2019/06/24 职场文书
golang 定时任务方面time.Sleep和time.Tick的优劣对比分析
2021/05/05 Golang
一看就懂的MySQL的聚簇索引及聚簇索引是如何长高的
2021/05/25 MySQL