#Python入门(三)##太原理工大学机器人团队20天学习打卡day3

数字类型

一:整数
python有4种进制表示形式

  1. 十进制:110120119
  2. 二进制:以0b或0B开头:0b010,0B001
  3. 八进制:以0o或0O开头,0o110,0O120
  4. 十六进制:以0x或0X开头:0x1a,0X23

二:浮点数
在这里插入图片描述 在这里插入图片描述 (Why???)
浮点数间运算存在不确定尾数,不是bug
0.1
在这里插入图片描述
python语言使用53位二进制来表示浮点型的小数部分
又因为二进制表示小数,可以无限接近,但不完全相同
而计算机数据由二进制表示
所以出现会出现上述问题
解决办法:使用round函数
round(x,d):对x四舍五入,d是小数截取位数
round(0.1+0.2,1)==0.3

浮点数也可以用科学计数法表示,e或E为幂的符号,10为基数
5.2e2表示520
1.134E3表示1314

三:复数 (与数学中概念一样,a+bj)
z=3+4j
z.real取实部
z.imag取虚部

特殊操作符

  • x/y:除,x与y之商 10/3结果为3.333333333
  • x//y:整数除,x与y的整数商,10//3结果为3
  • x** y:x的y次幂,4**2为16 , 4 **0.5为2

注意****注意:类型间混合运算,生成最宽类型
整数->浮点数->复数
110+10.0=120.0

运算函数(提供两个,其余的要用到再查表)

  • divmod(x,y):商余,(x//y,x%y) 同时输出商和余数
    divmod(13,3)结果为(4,1)
    -pow(x,y,z):幂余,(xy)%z, z可省略
    pow(2,5,3)结果为2

实例:
每周休息两天每天退步1%,工作日5天每天进步多少,一年之后你的能力能提高10倍

#DayDayUp.py 
def dayUP(df):  #def定义一个函数dayUP(参数)   
	dayup = 1     
for i in range(365):       
 	if i % 7 in [6,0]:            
 		dayup = dayup*(1 - 0.01)        
	 else:            
		 dayup = dayup*(1 + df)     
 	return dayup 
 dayfactor = 0.01 
 while dayUP(dayfactor) < 10:  #判断条件是否成立,条件成立时循环执行  
    dayfactor += 0.001 
 print("工作日的努力参数是:{:.3f} ".format(dayfactor))
 #{:.3f}.format(a)指输出a的三位小数

结果
在这里插入图片描述

发布了5 篇原创文章 · 获赞 8 · 访问量 311

猜你喜欢

转载自blog.csdn.net/weixin_46424753/article/details/104613215