python核心编程____学习心得____part4

第五章 数字

数字: 标量存储,随机访问,不可更改(数字变更后会生成新的对象)

    注:不可变类型改变的是指针的指向而不是内容本身

python支持8进制:0开头

   16进制:0x开头

双精度浮点型:可以用直接的十进制或者科学计数法表示。浮点型值通常都有一个小数点和一个可选的后缀e.在e和指数之间可以用正(+)或(-)表示指数的正负

复数:

  num.real                     #复数的实部

  num.imag                 #复数的虚部

  num.conjugate()             #返回该复数的共轭复数

 

 

混合模式操作符:

  coerce(a,b)方法:

          如果有一个操作数为复数,另一个也会转化成复数

          如果有一个操作数为长整数,另一个也会转化成长整数

          如果有一个操作数为浮点数,另一个也会转化成浮点数

  取余操作:

          浮点型取余:

              商取小于等于精度值得最大整数的乘积之差:x-(math.floor(x/y)*y)

  幂运算:左**右:

        左不看符号,右看符号:

>>>-3**2

-9

>>>(-3)**2

9

>>>4.0**-1.0

0.25

 

 

  位操作符:

      ~num                         #单目运算,对数的每一位取反:-(num+1)

      num1<<num2

      num1>>num2

      num1&num2

      num1 ^ num2

      num1 | num2

 

 

数值工厂函数:

  bool(obj)                   #返回对象的布尔值

  int(obj,base = 10)             #返回一个字符串或数值对象的字符表示(base为可选的进制参数)

  long()

  float()

  complex()

功能函数:

  coerce()

  divmod(a,b)

       整型:返回(地板除,取余)

       浮点型:返回(math.floor(num1/num2),取余)

       复数:返回 (math.floor((num1/num2).real),取余)

取整函数的区别:

  int()                                 #直接截去小数部分(返回整型)

  floor()                              #得到最接近但是小于原数的整型(返回浮点型)

  round()                           #得到最接近原数的整型(返回浮点型)

数值运算的内建函数:

  abs(num)                        #返回绝对值

  coerce()       #num1和num2转换为同一类型

  divmod()

  pow(num1.num2,mod = 1)                 #取num1的num2次方如果提供mod参数,则计算结果在对mod进行取余运算

  round()

仅适用于整型的内建函数:

  hex()      #转换为16进制

  oct()      #转换为8进制

  chr()      #ASCII值得数字转换为字符

  ord()      #接受ASCII字符转换为ASCII值

  unichr()      #接受unicode码值返回对应得unicode字符

 

 

相关练习:

1.计算两个数的乘积

1 #_auther_="stuwu79"
2 #date:2019/10/18
3 a = input("please input a number:")
4 b = input("please input a number:")
5 def cj(a,b):
6     return int(a)*int(b)
7 print(cj(a,b))

2.取余。判断年份是否为闰年

1 #_auther_="stuwu79"
2 #date:2019/10/18
3 year = int(input("please input a year:"))
4 if (year % 4 == 0 and year % 100 != 0) or (year%4 == 0 and year%100 ==0):
5     print("yes")
6 else:
7     print("no")

3.最大公约数与最小公倍数

 1 #_auther_="stuwu79"
 2 #date:2019/10/18
 3 a = int(input('please enter 1st num:'))
 4 b = int(input('please enter 2nd num:'))
 5 s = a * b
 6 while a % b != 0:
 7     a, b = b, (a % b)
 8 else:
 9     print(b, 'is the maximum common divisor')
10     print(s // b, 'is the least common multiple')

 

posted @ 2019-10-18 21:01  戚玖  阅读(130)  评论(0编辑  收藏  举报