推 Panthalassa: 假定 a, b 是字串,所求:04/03 02:26
→ Panthalassa: sum([ a[i] != b[i] for i in range(len(a)) ])04/03 02:26
推 ThxThx: 樓上這樣 1). 沒有考慮len(b) < len(a)的時候會有error04/03 03:23
→ ThxThx: 2). 比較慢又不pythonic04/03 03:23
→ ThxThx: 我認為正確的作法是sum(x != y for x, y in zip(a, b))04/03 03:25
→ ThxThx: 這是當a,b一樣長的時候,不保證一樣的時候04/03 03:28
→ ThxThx: sum(x != y for x, y in zip(reversed(a), reversed(b)))04/03 03:29
→ Panthalassa: 噢對!但也許應該要前面放 assert ?04/03 03:38
→ Panthalassa: 但若長度不一樣的話,用 zip 會補 None 然後算成不同04/03 03:38
→ Panthalassa: 不確定是否滿足需求...04/03 03:38
→ Panthalassa: 從原 Po 的敘述來看應該是要補 004/03 03:39
→ ThxThx: 嗯嗯有道理我第二個答案會忽略比較長的04/03 05:26
→ ThxThx: 把第二個答案zip換成itertools.zip_longest應該可以04/03 05:29
噓 djshen: 應該先說一下自己的想法04/03 10:15
恩恩感謝大家的回答,因為我昨天才剛學兩小時
我有做出來,但我的方式很慢,就是列舉法把他們變成字串後一個一個去比較,覺得自己
非常腦,所以才來問orz
※ 編輯: Redbeansauce (114.136.8.1), 04/03/2018 10:36:49
→ s860134: 你的思路沒錯阿 04/03 12:12
→ s860134: 轉 str 用 zfill 04/03 12:18
→ s860134: 其實這根本就只是對 python buildin function 記多少而以 04/03 12:19