python for循环嵌套break和contion区别_初学python----第二篇

#### 拼接字符串

当+用于数字时表示加法,但是当+用于字符串时,它还有拼接字符串(将两个字符串连接为一个)的作用,请看代码:

name = "C语言中文网"

url = "http://c.biancheng.net/"

age = 8

info = name + "的网址是" + url + ",它已经" + str(age) + "岁了。"

print(info)

运行结果:

C语言中文网的网址是http://c.biancheng.net/,它已经8岁了。

#### / 和 // 除法运算符

Python 支持/和//两个除法运算符,但它们之间是有区别的:

/表示普通除法,使用它计算出来的结果和数学中的计算结果相同。

//表示整除,只保留结果的整数部分,舍弃小数部分;注意是直接丢掉小数部分,而不是四舍五入。

#整数不能除尽

print("23/5 =", 23/5)

print("23//5 =", 23//5)

print("23.0//5 =", 23.0//5)

print("-------------------")

#整数能除尽

print("25/5 =", 25/5)

print("25//5 =", 25//5)

print("25.0//5 =", 25.0//5)

print("-------------------")

#小数除法

print("12.4/3.5 =", 12.4/3.5)

print("12.4//3.5 =", 12.4//3.5)

运行结果:

23/5 = 4.6

23//5 = 4

23.0//5 = 4.0

\-------------------

25/5 = 5.0

25//5 = 5

25.0//5 = 5.0

\-------------------

12.4/3.5 = 3.542857142857143

12.4//3.5 = 3.0

从运行结果可以发现:

/的计算结果总是小数,不管是否能除尽,也不管参与运算的是整数还是小数。

当有小数参与运算时,//结果才是小数,否则就是整数。

求余运算符

Python % 运算符用来求得两个数相除的余数,包括整数和小数。Python 使用第一个数字除以第二个数字,得到一个整数的商,剩下的值就是余数。对于小数,求余的结果一般也是小数。

注意,求余运算的本质是除法运算,所以第二个数字也不能是 0,否则会导致 ZeroDivisionError 错误。

print("-----整数求余-----")

print("15%6 =", 15%6)

print("-15%6 =", -15%6)

print("15%-6 =", 15%-6)

print("-15%-6 =", -15%-6)

print("-----小数求余-----")

print("7.7%2.2 =", 7.7%2.2)

print("-7.7%2.2 =", -7.7%2.2)

print("7.7%-2.2 =", 7.7%-2.2)

print("-7.7%-2.2 =", -7.7%-2.2)

print("---整数和小数运算---")

print("23.5%6 =", 23.5%6)

print("23%6.5 =", 23%6.5)

print("23.5%-6 =", 23.5%-6)

print("-23%6.5 =", -23%6.5)

print("-23%-6.5 =", -23%-6.5)

运行结果:

-----整数求余-----

15%6 = 3

-15%6 = 3

15%-6 = -3

-15%-6 = -3

-----小数求余-----

7.7%2.2 = 1.0999999999999996

-7.7%2.2 = 1.1000000000000005

7.7%-2.2 = -1.1000000000000005

-7.7%-2.2 = -1.0999999999999996

---整数和小数运算---

23.5%6 = 5.5

23%6.5 = 3.5

23.5%-6 = -0.5

-23%6.5 = 3.0

-23%-6.5 = -3.5

从运行结果可以发现两点:

只有当第二个数字是负数时,求余的结果才是负数。换句话说,求余结果的正负和第一个数字没有关系,只由第二个数字决定。

%两边的数字都是整数时,求余的结果也是整数;但是只要有一个数字是小数,求余的结果就是小数。

** 次方(乘方)运算符

Python ** 运算符用来求一个 x 的 y 次方,也即次方(乘方)运算符。

由于开方是次方的逆运算,所以也可以使用 ** 运算符间接地实现开方运算。

print('----次方运算----')

print('3**4 =', 3**4)

print('2**5 =', 2**5)

print('----开方运算----')

print('81**(1/4) =', 81**(1/4))

print('32**(1/5) =', 32**(1/5))

运行结果:

\----次方运算----

3\*\*4 = 81

2\*\*5 = 32

\----开方运算----

81\*\*(1/4) = 3.0

32\*\*(1/5) = 2.0

and和or

print(100 and 200)

print(45 and 0)

输出结果:

200

0

对于 and 运算符,两边的值都为真时最终结果才为真,但是只要其中有一个值为假,那么最终结果就是假,所以 Python 按照下面的规则执行 and 运算:

如果左边表达式的值为假,那么就不用计算右边表达式的值了,因为不管右边表达式的值是什么,都不会影响最终结果,最终结果都是假,此时 and 会把左边表达式的值作为最终结果。

如果左边表达式的值为真,那么最终值是不能确定的,and 会继续计算右边表达式的值,并将右边表达式的值作为最终结果。

print("" or "http://c.biancheng.net/python/")

print(18.5 or "http://c.biancheng.net/python/")

输出结果:

http://c.biancheng.net/python/

18.5

对于 or 运算符,情况是类似的,两边的值都为假时最终结果才为假,只要其中有一个值为真,那么最终结果就是真,所以 Python 按照下面的规则执行 or 运算:

如果左边表达式的值为真,那么就不用计算右边表达式的值了,因为不管右边表达式的值是什么,都不会影响最终结果,最终结果都是真,此时 or 会把左边表达式的值作为最终结果。

如果左边表达式的值为假,那么最终值是不能确定的,or 会继续计算右边表达式的值,并将右边表达式的值作为最终结果。

三目运算

if a>b:

max = a;

else:

max = b;//在python中这段代码可写成 max = a if a>b else b

使用 if else 实现三目运算符(条件运算符)的格式如下:

exp1 if contion else exp2

condition 是判断条件,exp1 和 exp2 是两个表达式。如果 condition 成立(结果为真),就执行 exp1,并把 exp1 的结果作为整个表达式的结果;如果 condition 不成立(结果为假),就执行 exp2,并把 exp2 的结果作为整个表达式的结果。

【实例】使用 Python 三目运算符判断两个数字的关系:

a = int( input("Input a: ") )

b = int( input("Input b: ") )

print("a大于b") if a>b else ( print("a小于b") if a

可能的运行结果:

Input a: 45↙

Input b: 100↙

a小于b

该程序是一个嵌套的三目运算符。程序先对 a>b 求值,如果该表达式为 True,程序就返回执行第一个表达式 print("a大于b"),否则将继续执行 else 后面的内容,也就是:

( print("a小于b") if a

进入该表达式后,先判断 a

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值