python:基本數據類型

#DayDayUpQ1.py
dayup1 = pow(1.001,365)
daydown= pow(0.999,365)
print("向上{:.2f},向下{:.2f}".format(dayup,daydown))

#DayDayUpQ2.py
dayfactor=0.005
dayup=pow(1+dayfactor,365)
daydown=pow(1-dayfactor,365)
print("up={:.2f},down={:.2f}".format(dayup,daydown))

#DayDayUpQ3.py
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))'''

#DayDayUpQ4.py
def dayUp(df):   #def 定義函數
    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))


字符串高級用法
[m:n:k]
根據步長k來對字符串切片
[m:n]
沒m表示從0開始到n之前,沒有n
沒n表示從m開始到結尾
[::-1]逆序


轉義符\ 
#WeekNamePrintV1.py
weekStr="星期一星期二星期三星期四星期五星期六星期日"
weekId=eval(input("請輸入星期數字(1-7):"))
#input保存字符串  用eval去掉引號
pos=(weekId-1)*3
print(weekStr[pos:pos+3])

#WeekNamePrintV2.py
weekStr="一二三四五六七"
weekId=eval(input("請輸入星期數字(1-7):"))
print("星期"+weekStr[weekId-1])

len(x) 返回字符串長度
str(x)  任意類型x加上“”變成字符串形式
hex(x)/oct(x)  十六進制/八進制
chr(u) 返回字符
ord(x) 返回Unicode編碼

字符串中處理方法 要用.
str.lower() 全小寫
str.upper() 全大寫
str.split(sep=None) 分割 "A,B,C".split(",")    ->   ['A','B','C']
str.count(sub) 統計sub在str中出現的次數
str.replace(old,new) new替換old
str.center(width[,fillchar]) 字符串根據width居中"python".center(20,"=")-> '=======python======='
str.strip(chars)去掉chars
str.join(iter) 除最後一個元素外的每個元素後增加一個iter

格式化
   .format()
	槽  可填數字代表format()中第幾個數字
 "{1}:計算機{0}的CPU佔用率爲{2}%".format("2018-10-10","C",10)  
		長度爲20 =填充 ^居中對齊 >右對齊  <左對齊   ,千位分隔符
格式控制標記:”{0:=^20}.format("")

控制整數 
  二進制 字符型(unicode) 十進制 八進制 十六進制 大寫十六進制 
“{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}".format(425) 

控制浮點數
  科學記數法 大寫科學記數法  非科學記數法 百分號形式
"{0:e},{0:E},{0:f},{0:%}".format(3.14)

time庫
import time
time.
分爲三類:
1.獲取時間 time() ctime() gmtime()
獲取時間的浮點數 返回字符串返回當前時間(easiest) 計算機可以處理的時間格式,其他程序可以利用
2.時間格式化 strftime(tpl,t) strptime()
tpl 格式化模板字符串 t=time.gmtime()
%Y 年
%m 月份
%B 月份名稱 April
%b 月份名稱縮寫 Apr
%d 日
%A 星期名稱
%a 星期名稱縮寫
%H 小時(24h制)
%h 小時(12h制)
%p 上下午
%M 分鐘
%S 秒
3.程序計時 sleep() perf_counter()
產生時間 測量時間函數
def wait():
time.sleep(3.3)
wait() #程序將等待3.3s後再退出

文本進度條
字符串方式打印可動態變化的文本進度條

#TextProBarV1.py
import time
scale=10
#文本大概寬度爲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("-------執行結束")

單行動態刷新 光標回退到之前位置\r

#TextProBarV2.py
import time
for i in range(101):
    print("\r{:3}%".format(i),end='') # end表示print後加什麼,此爲後不會還行
    time.sleep(0.1)

#TextProBarV13.py
import time
scale=50
#文本大概寬度爲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,'-'))

// “來表示整數除法,返回不大於結果的一個最大的整數,而” / " 則單純的表示浮點數除法

** 次方

real+imag.j

錯題:
1.23e+4+9.87e+6j.real 12300.0
1.23e-4+5.67e+4j.imag 56700.000123
s=‘Python’ print("{0:3}".format(s)) Python
123e+4+9.87e+6j.imag 9882300.0
浮點數0.0和整數0具有相同的值
‘abcd’<‘ad’ 返回true

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章