Python中表达式和语句及for、while循环练习
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中我暂时并未发现谁对着两个名词的明确定义:我对这两个名词的理解就是,表达式就是你想要执行的对象,语句就是你的具体执行操作. 这里应用慕课网老师的一段话,摘自网上"表达式(E ...
- 归纳整理Python中的控制流语句的知识点
归纳整理Python中的控制流语句的知识点 Python 解释器在其最简单的级别,以类似的方式操作,即从程序的顶端开始,然后一行一行地顺序执行程序语句.例如,清单 1 展示了几个简单的语句.当把它们键 ...
- 一文了解Python中的判断语句
判断(if)语句 目标 开发中的应用场景 if 语句体验 if 语句进阶 综合应用 01. 开发中的应用场景 生活中的判断几乎是无所不在的,我们每天都在做各种各样的选择,如果这样?如果那样?…… 程序 ...
- Python教程:Python中的for 语句
Python 中的 for 语句与你在 C 或 Pascal 中可能用到的有所不同. Python教程 中的 for 语句并不总是对算术递增的数值进行迭代(如同 Pascal),或是给予用户定义迭代步 ...
- Python中的import语句
Python中的import语句是导入一个文件,这条语句主要做三件事: 1 通过一定的方式,搜寻要导入的文件: 2 如果需要,就编译这个文件: 3 运行这个文件 但是,需要注意的是,所有这三个步骤,都 ...
- JavaScript中:表达式和语句的区别
JavaScript中:表达式和语句的区别 Javascript语言精粹:表达式是由运算符构成,并运算产生结果的语法结构.程序是由语句构成,语句则是由“:(分号)”分隔的句子或命令.如果在表达式后面加 ...
- Python中的基本语句
本文简单的介绍下Python的几个基本语句. print语句 print可同时打印多个表达式,只要将他们用逗号隔开. >>> name='Gumy' >>> gre ...
- python中的判断语句与循环语句
if语句 每条if语句的核心都是一个值为Ture或False的表达式,这种表达式被称为为条件测试.if语句检查程序当前状态,并据此采取相应的措施.如果条件测试的值为Ture,Python就执行紧跟在i ...
- 【Python】解析Python中的条件语句和循环语句
1.if语句 if语句有好几种格式,比如: if condition: statement 使用 if ... else ...: if condition: statement(1) else: s ...
随机推荐
- class文件的结构
任何一个class文件都对应着唯一一个类或接口的定义信息,但反过来说,类或接口的定义信息并不一定都在文件里(比如类或接口也可以通过类加载器直接生成) class文件是一组以8位字节为基础单位的二进制流 ...
- The Road to Ryu: Hi Ryu
参考: ryu入门教程 ryu ryu/ryu Structure -ryu/ryu app base cmd contrib controller lib ofproto services test ...
- HDU 3488 Tour(最小费用流:有向环最小权值覆盖)
http://acm.hdu.edu.cn/showproblem.php?pid=3488 题意: 给出n个点和m条边,每条边有距离,把这n个点分成1个或多个环,且每个点只能在一个环中,保证有解. ...
- php while循环
<html> <body> <?php $i=; ) { echo "The number is " . $i . "<br>& ...
- adb相关指令
adb rootadb connect 172.16.20.162 //通过adb连接远程设备adb pull /data/data/com.xiaomi.voicecontrol /Users/r ...
- 插件uaredirect.js实现电脑版跳转到手机版网站
一.介绍 这段时间,有好多朋友问我,跳转到手机版的那个JS是怎么写的.其实这个JS也不是我写的,是百度siteapp下的一款跳转的产品,使用起来很方便.你可以用这款JS跳转到手机版,也可以跳转到任何你 ...
- poj-2096-期望/dp
http://poj.org/problem?id=2096 有n种病毒,s个服务器,每天等概率的在某个服务器上发现某一种病毒,问发现所有种类病毒且覆盖所有的服务器的期望天数. 利用全期望公式可以将期 ...
- 基于Oracle的SQL优化(崔华著)-学习笔记
201704171025 01. 列rows记录的就是执行计划中每一个执行步骤所对应的Cardinality的值 列Cost(%CPU)记录的就是执行计划中的每一个执行步骤对应的成本 02. Comp ...
- MyBatis案例&增删改查
一.MyBatis入门案例: ①:引入jar包 ②:创建实体类 Dept,并进行封装 ③ 在Src下创建大配置mybatis-config.xml <?xml version="1.0 ...
- checkbox选中的问题(Ajax.BeginForm)
判断checkbox选中的方法方法一:if ($("#checkbox-id")get(0).checked) { // do something} 方法二:if($('#chec ...