资讯专栏INFORMATION COLUMN

《Python基础教程第二版》第五章-条件、循环和其他语句(一)

宋华 / 2677人阅读

摘要:所解包的序列中的元素数量必须和赋值符号左边的变量数量完全一致。其中,冒号标识语句块开始块中每一个语句都是缩进相同量退回到和已经闭合的块一样的缩进量时,表示当前块结束。成员资格运算符字符串和序列比较字符串可按照字母顺序比较。

print和import

print打印多个表达式,用逗号,隔开

print "abc:", 42, "nonono"
#输出在每个参数之间添加空格

print在结尾处加上逗号,,接下来的语句会与前一条语句打印在同一行

print "hello",
print "word!"
#hello word!

import从模块中导入函数

import module
from module import function
from module import function,function2,function3
from module import*

as子句,给出想要使用模块的别名

import math as fu1
fu1.sqrt(4)

from math import sqrt as fun2   
fun2(4)
赋值 序列解包/递归解包

多个赋值操作同时进行

x,y,z = 1,2,3

交换变量

x,y = y,x

popitem
popitem 获取并删除字典中任意的键值对,返回键值对元组,可以直接赋值到两个变量中。

scoundrel = {"name":"Robin", "girlfriend":"Marion"}
key, value = scoundrel.popitem()

Note:

所解包的序列中的元素数量必须和赋值符号=左边的变量数量完全一致。
#除非使用星号运算符:
# a,b,*rest = [1,2,3,4]
# rest结果为[3,4]
链式赋值
x = y = function()
增量赋值
x = 2 
x += 2
语句块:缩进排版

创建语句块:

代码前放置空格缩进语句可以创建语句块。
Note: 块中的每行都应该缩进同样的量。
line1
line2:
    block
    same block
    the last bolck
line3

其中,

1. 冒号:标识语句块开始;
2. 块中每一个语句都是缩进相同量;
3. 退回到和已经闭合的块一样的缩进量时,表示当前块结束。
条件和条件语句 布尔变量

假fales(0)

Fales None 0 "" () [] {}
#其他都为真true(1)

bool函数

bool("I think I"m ok.")
#true,一般Python会自动转换这些值
if语句

if

name = raw_input(‘your name:’)
if name.endwith("afra"):
    print "hell, afra!"

else

name = raw_input(‘your name:’)
if name.endswith("afra"):
    print "hell, afra!"
else:
    print "who?"

elif
检查多个条件,else if简写

num = input("number:")
if num > 0:
    print ">0"
elif num < 0:
    print "<0"
else:
    print "0"

嵌套
if嵌套if语句

name = raw_input("name?")
if name.endswith("afra"):
    if name.startswith("Mr."):
        print "Mr.afra!"
    elif name.startswith("Mrs."):
        print "Mrs.afra"
    else:
        print "afra"
else:
    print "who?"        
运算符

比较运算符

< 
== 
>
>= 
<= 
!= 
is  同一对象
is not  不同对象昂
x in y  x是y容器的成员
not in    不是容器内的成员

连接运算符
比较运算符和赋值运算符都可以连接

0 < age < 10

相等运算符
==

is同一性运算符

`is`判定同一性,而不是相等性.
使用`==`运算符来判定两个对象是否相等,使用`is`判定两个是否是同一个对象。

in成员资格运算符

name = raw_input("name?")
if "s" in name:
    print "s"
else:
    print "?"

字符串和序列比较

字符串可按照字母顺序比较。
字母的顺序值可以用 ord函数 查到
ord()和chr()功能相反
忽略大小写可以使用 upper()lower()

"KiJ".lower() == "kIj".lower()

布尔运算符
and / or / not

number = input("number?")
if number <= 10 and number >=1:
    print "yes"
else:
    print "no"
#连接比较 
1 <= number <= 10

#三个运算符结合
if ((cash > price) or customer_has credit) and not out_stock:
    give()     
#短路逻辑
略
#Python内置条件表达式
a if b else c
b为真,返回a;否则,返回c

断言

asser

if not condition:
    crash program

可以要求某些条件必须为真,例如,检查函数参数的属性、作为初期测试和调试过程中的辅助条件。

age = 10
assert 0 < age < 100
age = -1
assert 0 < age < 100, "must be realistic"
   

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/42222.html

相关文章

  • Python基础教程二版五章-条件循环其他语句(二)

    摘要:处理不等长序列时,止于最短序列。版本一不推荐版本二这段代码在基础教程第二版我认为原书代码中的缩进格式应该是错了版本三推荐使用内建函数翻转和排序迭代子句列表推导式轻量级循环 循环 while 代码1 x = 1 while x

    RayKr 评论0 收藏0
  • 如果想成为名顶尖的前端,这份书单你定要收藏!

    摘要:其中负载均衡那一节,基本上是参考的权威指南负载均衡的内容。开发指南读了一半,就是看这本书理解了的事件循环。哈哈创京东一本骗钱的书。 欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯IVWEB团队 发表于云+社区专栏作者:link 2014年一月以来,自己接触web前端开发已经两年多了,记录一下自己前端学习路上看过的,以及道听途说的一些书,基本上按照由浅入深来介绍...

    Scliang 评论0 收藏0
  • 如果想成为名顶尖的前端,这份书单你定要收藏!

    摘要:其中负载均衡那一节,基本上是参考的权威指南负载均衡的内容。开发指南读了一半,就是看这本书理解了的事件循环。哈哈创京东一本骗钱的书。欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯IVWEB团队发表于云+社区专栏 作者:link 2014年一月以来,自己接触web前端开发已经两年多了,记录一下自己前端学习路上看过的,以及道听途说的一些书,基本上按照由浅入深来介绍。...

    233jl 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<