Python语言程序设计【第三周】

本文介绍了Python中的基本数据类型,包括整数(支持多种进制表示)、浮点数(涉及精度问题及round()函数)以及字符串的使用和操作。还探讨了数值运算函数和工作日力量的计算模型。此外,提到了time库在时间获取和格式化中的应用,并展示了不同类型的进度条实现示例。
摘要由CSDN通过智能技术生成

本文记录第三周基本数据类型的学习过程

整数类型

  1. 整数无限制,最常用pow(x,y)函数,来计算x的y次幂 也可用x**y表示

  1. 二进制0b,0B开头

  1. 八进制0o,0O开头

  1. 十六进制0x,0X开头

浮点数类型

  1. 浮点数间运算存在不确定尾数,例如 0.1+0.2=0.30000000000000004

  1. 浮点数运算以及比较 利用round()函数辅助

  1. round(x,d),对x四舍五入,保留d位小数

  1. 浮点数科学计数法表示

  1. <a>e<b> 或<a>E<b>

  1. 4.3e-3 表示 4.3乘十的负三次方

数值运算函数

天天向上的力量

一 每一天

dayfactor=eval(input())
dayup=pow(1+dayfactor,365)
daydown=pow(1-dayfactor,365)
print("向上:{:.2f},向下:{:.2f}".format(dayup,daydown))

二 工作日

dayup = 1.0
dayfactor = 0.01
for i in range(365):
   if i % 7 in [6,0]:
       dayup = dayup*(1-dayfactor)
   else:
       dayup = dayup*(1+dayfactor)
print("工作日的力量:{:.2f} ".format(dayup)

i%7 余数为0或6 即为周末,其他为工作日

三 工作日 VS 每一天

#DayDayUpQ4.py
def dayUP(df):
    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)<37.78:
    dayfactor+=0.001
print("工作日的努力参数是: {:.3f}".format(dayfactor))

def保留字为定义函数,其中df为参数

字符串

字符串的序号

字符串的使用

[::-1]可以切片实现逆序

特殊字符

字符串操作符

获取星期字符串

weekstr="一二三四五六日"
weekId=eval(input())
print('星期'+weekstr[weekId-1])

字符串处理函数

字符串处理方法

字符串格式化

字符串格式化使用format函数,使用方法如下

<模板字符串>.format(参数)

time库的使用

时间获取

时间格式化

计时应用

应用——文本进度条

1.较为简单的进度条

#TextProBarV1.py
import time
scale = 10
print("------执行开始------")
for i in range(scale+1):
    a = '*' * i
    b = '.' * (scale - i)
    c = (i/scale)*100
    print("{:^3.0f}%[{}->{}]".format(c,a,b))
    time.sleep(0.1)
print("------执行结束------")

2.单行刷新进度条

#TextProBarV2.py
import time
for i in range(101):
    print("\r{:3}%".format(i), end="")
    time.sleep(0.1)

\r 转义字符为不换行输出,达到刷新效果

3.实例

#TextProBarV3.py
import time
scale = 50
print("执行开始".center(scale//2, "-"))
start = time.perf_counter()
for i in range(scale+1):
    a = '*' * i
    b = '.' * (scale - i)
    c = (i/scale)*100
    dur = time.perf_counter() - start
    print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end='')
    time.sleep(0.1)
print("\n"+"执行结束".center(scale//2,'-'))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值