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 基础学习第二弹 类属性和实例属性
Aug 27 Python
Python引用(import)文件夹下的py文件的方法
Aug 26 Python
Python中的异常处理学习笔记
Jan 28 Python
Python遍历指定文件及文件夹的方法
May 09 Python
一步步教你用Python实现2048小游戏
Jan 19 Python
python使用folium库绘制地图点击框
Sep 21 Python
【python】matplotlib动态显示详解
Apr 11 Python
Django通过dwebsocket实现websocket的例子
Nov 15 Python
python pandas移动窗口函数rolling的用法
Feb 29 Python
python实现ftp文件传输功能
Mar 20 Python
python3中datetime库,time库以及pandas中的时间函数区别与详解
Apr 16 Python
Python自动巡检H3C交换机实现过程解析
Aug 14 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源代码
2006/10/09 PHP
php 需要掌握的东西 不做浮躁的人
2009/12/28 PHP
深入for,while,foreach遍历时间比较的详解
2013/06/08 PHP
php导出中文内容excel文件类实例
2015/07/06 PHP
php多进程模拟并发事务产生的问题小结
2018/12/07 PHP
HTML中事件触发列表与解说
2007/07/09 Javascript
jquery 操作单选框,复选框,下拉列表实现代码
2009/10/27 Javascript
JavaScript 学习笔记(九)call和apply方法
2010/01/11 Javascript
Javascript 页面模板化很多人没有使用过的方法
2012/06/05 Javascript
js取两个数组的交集|差集|并集|补集|去重示例代码
2013/08/07 Javascript
页面装载js及性能分析方法介绍
2014/03/21 Javascript
JavaScript实现防止网页被嵌入Frame框架的代码分享
2014/12/29 Javascript
php常见的页面跳转方法汇总
2015/04/15 Javascript
jquery+css实现动感的图片切换效果
2015/11/25 Javascript
Bootstrap树形控件使用方法详解
2016/01/27 Javascript
JavaScript实现图片自动加载的瀑布流效果
2016/04/11 Javascript
AngularJS基础 ng-srcset 指令简单示例
2016/08/03 Javascript
解决node.js安装包失败的几种方法
2016/09/02 Javascript
Bootstrap学习笔记 轮播(Carousel)插件
2017/03/21 Javascript
关于Bootstrap按钮组件消除黄框的方法
2017/05/19 Javascript
使用jQuery动态设置单选框的选中效果
2018/12/06 jQuery
解决微信小程序云开发中获取数据库的内容为空的方法
2019/05/15 Javascript
采用Psyco实现python执行速度提高到与编译语言一样的水平
2014/10/11 Python
Python open()文件处理使用介绍
2014/11/30 Python
Python科学计算之Pandas详解
2017/01/15 Python
Python爬取网页中的图片(搜狗图片)详解
2017/03/23 Python
名片管理系统python版
2018/01/11 Python
简单谈谈python中的lambda表达式
2018/01/19 Python
用python标准库difflib比较两份文件的异同详解
2018/11/16 Python
基于python计算并显示日间、星期客流高峰
2020/05/07 Python
python3实现名片管理系统(控制台版)
2020/11/29 Python
Betsey Johnson官网:妖娆可爱的连衣裙及鞋子、手袋和配件
2016/12/30 全球购物
电大毕业生自我鉴定
2013/11/10 职场文书
销售业务员岗位职责
2014/01/29 职场文书
三八活动策划方案
2014/08/17 职场文书
CSS实现背景图片全屏铺满自适应的3种方式
2022/07/07 HTML / CSS