python高階用法 列舉和格式化

2021-10-19 06:19:12 字數 1211 閱讀 4294

enum

import enum

#定義類時繼承enum.enum

class colorcode(enum.enum):

red = 1

blue = 2

def print_color(colorcode):

if colorcode == colorcode.red.value:

print("紅色")

列舉值不能更改,colorcode.red=4 將會報錯

列舉值為了防止列舉值出現重複情況,enum模組還提供了unique裝飾器

import enum

from enum import unique

@unique

class colorcode(enum.enum):

red = 1

blue = 1

列舉值比較

列舉值之間不支援 > 和 < 操作,但支援等值比較和is身份比較

與字典結合的用法

如果真實值儲存在乙個字典裡,且模板裡預留了好多位置需要填充真實值,那就可以直接使用字典格式化

info = 

log = "--".format(info)

print(log)

log = "--".format(info=info)

print(log)

與tuple結合的方法

info = (1,'debug',u'測試連線')

log = "--".format(info)

print(log)

log = "--".format(info=info)

print(log)

與物件結合的方法

class info(object):

def __init__(self, id, type, msg):

self.id = id

self.type = type

self.msg = msg

info = info(1,'debug',u'測試連線')

log = "--".format(info=info)

print(log)

控制寬度

f-string用法

python高階用法 Python高階用法

python高階用法 三元表示式 x 10 y 20 print x if x y else y x 100 y 20 print x if x y else y 列表推導式和生成器 列表推導式 print i for i in range 10 print i 2 for i in range 1...

python 高階語法與用法 列舉的簡單用法

1 列舉 from enum import enum class vip enum yellow 1green 2balck 3red 4 print vip.balck print type vip.balck running python u users anson documents proj...

python高階用法

建立dict i for i in range 10 pandas給乙個dataframe的列沒有在另乙個dataframe的列中出現的列賦值為nan df a.loc df a.isin df b col name unique col name nan pandas做笛卡爾積 df a valu...