首页 > 技术文章 > python知识点小记

jiangxianseng 2019-10-23 20:37 原文

进制之间的转换

转二进制

a = 20
print(bin(a))

转八进制

a = 20
print(oct(a))

转16进制

a = 20
print(hex(a))

字符串索引

s1 = 'nskejkamsda'
print(s1[2])
或
print(s1[3:-1])



age = input("请输入你的年龄:").strip()  # .strp()可以去除input里面输入的字符串两边的空格
print(len(age))# 打印出input里面输入字符个数
if age.isdigit():# 判断input里面输入的是否是数字
   age = int(age)
   if age >=18:
        print("小姐姐你好")
   elif age < 18:
       print("小妹妹你好")
else:
        print('输入错误')

==表示比较,sum+=i可看出sum=sum+i

时间模块的部分应用

时间模块
获取时间:time(),ctime(),gmtime()
格式化时间:strftime(),strptime()
程序计时:sleep(),perf_counter()  #time.perf_counter()类似于time.time(),但是时间更精确.是cpu级别的时间
import time
sum = 0
start = time.time()    # 运算初始计时
for i in range(1000000):   
sum +=i
time.sleep(0.01)   # 程序运行时间沉睡0.01秒
print(sum)
end = time.time()  # 运算结束计时
print(end - start)# 得到时间计算的结果
import time
print(time.time())   # 获取当前时间  1571830402.745021
print(time.ctime())  # 获取带有格式的时间  Wed Oct 23 19:25:02 2019
print(time.gmtime())  # 获取计算机易于识别的时间  time.struct_time(tm_year=2019, tm_mon=10, tm_mday=23, tm_hour=11, tm_min=26, tm_sec=41, tm_wday=2, tm_yday=296, tm_isdst=0)


t1=time.gmtime()  # gmtime 获取的时间是格林威治时间,比北京时间少8小时
print(time.strftime("%Y-%m-%d,%H-%M-%S",t1)) # 国际项目可以饮用t1,国内可省略t1的赋值, 年大写,月日小写,时分秒都大写,小写%s表示占位符,-可以改成/
2019-10-23,19-56-37
2019-10-23,11-56-18


print(time.strptime("2019-10-23 11-10","%Y-%m-%d %H-%M"))    # 将当前时间字符串返回到之前的对象
输出结果:time.struct_time(tm_year=2019, tm_mon=10, tm_mday=23, tm_hour=11, tm_min=10, tm_sec=0, tm_wday=2, tm_yday=296, tm_isdst=-1)
    
    
 time.sleep(0.01)  #表示时间沉睡0.01秒

文本进度条

import time
print('...执行开始...')
count = 10
for i in range(count + 1):    
    a = "#" * i    
    b = "." * (count-i)    
    c = i/count * 100    
    print(f"[{a}->>{b}]{c}%")    
    time.sleep(0.5)
    print("...执行结束...")
    
    
    
或者
import time
scale = 100
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='')   # \r表示跟新覆盖前一个个数据,end=""表示不换行,
    time.sleep(0.1)
print("\n"+"执行结束".center(scale // 2,'-'))

推荐阅读