zoukankan      html  css  js  c++  java
  • Python学习-24.Python中的算术运算

    加法:+,与C#中并无区别,并且一样可以作用于字符串。

    但Python中不支持字符串与数值类型的相加。

    1 i = 1
    2 s = '1'
    3 print(s + i)

    这样是会在运行时报错的,正确写法如下:

    1 i = 1
    2 s = '1'
    3 print(s + str(i))

    Python中不支持自增,即:

    1 i = 1
    2 i++

    是错误的,正确写法:

    1 i = 1
    2 i += 1

    减法:-,同C#。且不支持自减。

    乘法:*,同C#。值得注意的是,Python支持幂运算,使用两个*。(C#中则使用Math.Pow)

    1 i = 9
    2 print(i**2)
    3 print(i**3)
    4 print(i**0.5)
    5 print(i**-1)

    输出:

    81
    729
    3.0
    0.1111111111111111

    除法:/,Python中的除法比较特殊。

    1 a = 11
    2 b = 2
    3 print(a/b)

    得到的结果是5.5,而并不是5。

    在Python中,除法会将被除数和除数都先转换为float类型再进行运算。同理,10/2会得到5.0。因此,在Python中,除法的结果必然是一个float。

    那么就无法使用整除了么?答案是否定的。

    1 print(11//2)# 5
    2 print(-11//2)# -6
    3 print(11.0//2)# 5.0

    第一行:// 运算符执行古怪的整数除法。如果结果为正数,可将其视为朝向小数位取整(不是四舍五入),但是要小心这一点。

    第二行:当整数除以负数, // 运算符将结果朝着最近的整数“向上”四舍五入。从数学角度来说,由于 −6 比 −5 要小,它是“向下”四舍五入,如果期望将结果取整为 −5,它将会误导你。

    第三行:// 运算符并非总是返回整数结果。如果分子或者分母是 float,它仍将朝着最近的整数进行四舍五入,但实际返回的值将会是 float 类型。

    PS:摘自《深入Python3》

    模运算,即取余:%,同C#。

    11%2得1

  • 相关阅读:
    剩下的树
    守形数
    小白鼠排队(map容器插入数据的四种方法)
    字母统计
    与7无关的数
    ZOJ
    基于js的CURD插件
    API验证插件
    Django之权限管理插件
    Django之信号和序列化
  • 原文地址:https://www.cnblogs.com/h82258652/p/4000414.html
Copyright © 2011-2022 走看看