|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 星期天去散步 于 2021-9-11 08:32 编辑
- class CountList:
-
- def __init__(self,*args):
- self.values = [x for x in args]:
- self.count = {}.fromkeys(range(len(self.values)),0)
- def __len__(self):
- return len(self.values)
- def __getitm__(self,key):
- self.count[key] += 1
- return self.values[key]
复制代码
求每一步详解,我看不懂 感谢大佬们
本帖最后由 傻眼貓咪 于 2021-9-11 11:26 编辑
你的
第 4 行多了個冒號 :
第 5 行縮進問題

解說:
- class CountList: # 創建一個 類
- def __init__(self,*args): # args 表示自定義長度參數(參數數量),可以是一個參數,可以是1000個參數
- self.values = [x for x in args] # 將參數賦予進一個新列表裡
- self.count = {}.fromkeys(range(len(self.values)),0) # 創建新字典,鍵為 0 1 2... 至 參數長度(參數數量),全部的值設為 0(字典有 鍵key 和 值value 兩個元素)
- def __len__(self):
- return len(self.values) # 函數:返回參數長度(參數數量)
- def __getitm__(self,key): # 以 鍵key 作為參數訪問
- self.count[key] += 1 # 被訪問時,值value +1
- return self.values[key] # 返回值
复制代码範例: - books = {}.fromkeys(range(1, 10), 'A')
- print(books)
复制代码- {1: 'A', 2: 'A', 3: 'A', 4: 'A', 5: 'A', 6: 'A', 7: 'A', 8: 'A', 9: 'A'}
复制代码
|
|