私は値付きの辞書から先頭の文字をスライスする必要があります-ただし、値の長さが1より大きい場合のみです。現在、辞書の内包表記でこれを行っています:
new_dict = {item[0]:item[1][1:] for item in old_dict if item.startswith('1')}
しかし、長さ 1 のキーがそのまま残されるようにこれを変更する方法がわかりません。
キーはハフマン コードのコードワードなので、'0' または '1' で始まります。
コード例は次のとおりです。
code = {'a':'0', 'b':'10', 'c':'110', 'd':'111'}
上記のコードは、'b'、'c'、'd' に対しては正常に機能しますが、'a' に対しては失敗します (これは意図的なものであり、単体テストです)。
上記の例を正しく変更してテストに合格するにはどうすればよいですか?