【第三周】基本数据类型

课程笔记

pow(x,y)	#计算x^y,想算多大算多大
#浮点数之间的运算比较用round()函数辅助
round(x,d)	#对x四舍五入,d是小数截取位数
z=1.23e-4+5.6e+89j	#z.real获得实部 z.imag获得虚部

在这里插入图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
3的3的99次方的后四位
这里写图片描述
这里写图片描述


字符串

这里写图片描述

  • [1:8:2]表示的应该是从角标1~7中迈两步取一个数
  • [::-1]表示逆序,即开头结尾都是空,所以是从开头到结尾,步长是-1,即从后向前逐步输出所有的字符串。

字符串代码示例

#WeekNamePrintV1.py
weekStr="星期一星期二星期三星期四星期五星期六星期日"
#input函数会将输入保存为字符串类型,需要用eval函数去掉两边的引号把它变成一个数字,并将数字存在变量weekId里
weekId=eval(input("请输入星期数字(1-7):"))
pos=(weekId-1)*3    #获取当前存放星期数组的角标
print(weekStr[pos:pos+3])
#WeekNamePrintV2.py
weekStr="一二三四五六日"
weekId=eval(input("请输入星期数字(1-7):"))
print("星期"+weekStr[weekId-1])

这里写图片描述

  • str(x)与eval(x)做了相反的工作
    这里写图片描述
    在这里插入图片描述
    在这里插入图片描述

一个有趣的星座实例

for i in range(12):
    print(chr(9800+i),end="")
#使用end的一个参数来决定每一个print输出之后是否要换行
#如果end等于空,那么输出之后并不换行,所有字符串将在一行显示

输出对比
第一行输出是加了end="",下边换行的则没有加。
这里写图片描述
在这里插入图片描述

  • 既然是居中就有填充,此处使用等号填充
    这里写图片描述

这里写图片描述
这里写图片描述
这里写图片描述

  • 最后给定宽度省略格式,则默认左对齐,空格填充
    这里写图片描述
  • b二进制 c字符形式即Unicode形式 d十进制 o八进制 x十六进制 X大写的十六进制

TIME库

在这里插入图片描述
这里写图片描述

  • time()的浮点数是从1970.1.1 零点零分到当前这个时间为止的以秒为单位的数值

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

  • strptime与strftime互补,strptime可以将字符串转化成时间
    这里写图片描述

  • 基于最开始的start时间开始计数
    这里写图片描述


文本进度条

#TextProBarV1.py
import time
#文本进度条的宽度
scale = 10
print("------执行开始------")
for i in range (scale + 1):
	#字符串与整数的乘积表示被复制的次数
    a = '*' * i
    b = '.' * (scale - i)
    #进度条百分比
    c = (i/scale)*100  
    #居中对齐,{:^3.0f}宽度为3,三个槽中依次是c,a,b
    print("({:^3.0f}%[{}->{}]".format(c,a,b))  
     #每打印完一次休眠0.1s再继续
    time.sleep(0.1) 
print("------执行结束------")

运行结果
这里写图片描述

单行动态刷新

  • 刷新的本质是用后打印的字符覆盖之前的字符
  • 不能换行,要对print进行控制
  • 打印后光标回退\r
#TextProBarV2.py
import time
for i in range (101):	#要打印0%到100%
    print("\r{:3}%".format(i),end="")
    time.sleep(0.1)

这里写图片描述
IDLE运行结果(自动屏蔽\r)
这里写图片描述
命令行运行结果

完整效果代码

#TextProBarV3.py
import time
scale = 50
#str.center(width[, fillchar])
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,'-'))

IDLE与Python运行效果
这里写图片描述
这里写图片描述
这里写图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值