logo
Loading...

作業第一題 為什麼我的 Counter 都會等於 0? - Cupoy

老師您好,想請問我第一題的 spam() 這樣寫,為什麼我的 counter 輸出都還是為0? de...

作業第一題 為什麼我的 Counter 都會等於 0?

2021/02/07 下午 06:09
Python 文字處理函數介紹
Jeffery
觀看數:16
回答數:2
收藏數:0

老師您好, 想請問我第一題的 spam() 這樣寫,為什麼我的 counter 輸出都還是為0? ```python def spam(s, isnumeric_count, isdigit_count, isdecimal_count): isnumeric_count = 0 isdigit_count = 0 isdecimal_count = 0 for attr in ['isnumeric', 'isdecimal', 'isdigit']: for i in s: if getattr(i,attr)() == True: if attr == 'isnumeric': isnumeric_count += 1 elif attr == 'isdecimal': isdigit_count += 1 else: isdecimal_count += 1 ``` ```python isnumeric_count = 0 isdigit_count = 0 isdecimal_count = 0 spam(test_string,isnumeric_count, isdigit_count, isdecimal_count) print('isnumeric_count: {}'.format(isnumeric_count)) print('isdigit_count: {}'.format(isdigit_count)) print('isdecimal_count: {}'.format(isdecimal_count)) ``` output: isnumeric_count: 0 isdigit_count: 0 isdecimal_count: 0

回答列表

  • 2021/02/07 下午 07:36
    李柏霆
    贊同數:0
    不贊同數:0
    留言數:1

    同學好 建議你可以先確認這行code裡面的函式是否有寫錯 getattr(i,attr)() == True: 因為所有input經這個函式判斷後都不成立,所以count才會一直是0

  • 2021/02/07 下午 08:34
    張維元 (WeiYuan)
    贊同數:0
    不贊同數:0
    留言數:1

    嗨,你好
    你的排版跑掉了,可以調整一下。另外是說「getattr(i,attr)()」這個東西應該就是回傳型態了,你可以試試看把它印出來。

    嗨,你好,我是維元,持續在不同的平台發表對 #資料科學、 #網頁開發 或 #軟體職涯 相關的文章。如果對於內文有疑問都歡迎與我們進一步的交流,都可以追蹤我的 Facebook技術部落格 ,也會不定時的舉辦分享活動,一起來玩玩吧 ヽ(●´∀`●)ノ 以下分享一些我近期發表跟資料科學有關的文章,歡迎大家持續追蹤: ■ 資料分析工具那麼多,該怎麼選? 🛠️
    真.資料團隊與分工
    觀察資料的 N 件事 🔖
    資料前處理必須要做的事 - 資料清理與型態調整