小弟正在尝试用 python 来模拟 wc 只能使用 sys 和 argparse 不可以使用其他的库 当我输入 python3 wc.py test.txt 的时候会显示 0 1 1 test.txt -w -c -l 各种功能能正常运行 唯独单独运行 wc.py 的时候并不可 当我运行 python3 wc 的时候会允许用户输入各种字符 然后来计算最终的结果 比如: python3 wc asdfa dfaf sadfa 然后按 Ctrl D 会退出并且会显示最终结果 3 3 17 这样
但我运行我的代码的时候会得出 0 0 0 这样的结果
代码如下: def wc(is_l, is_w, is_c, is_m, is_L, file_list):
....for file in file_list:
......if file is "-":
.........while True:
... try:
... f = open("test.txt", "w+")
... text_input = input()
... f.write(text_input)
... f.close()
... a = list()
... a.append("test.txt")
... b = wc(flag_l, flag_w, flag_c, flag_m, flag_L, a)
... if b:
... print(b)
... except (KeyboardInterrupt, EOFError):
... return wc_output(is_l, is_w, is_c, is_m, is_L, total_lines, total_words, total_bytes, total_chars, max_line, "")
.. return None
順便請問一下 怎麼可以讓這個 wc 也可以識別計算 Unicode??
我沒有辦法發佈我完整的代碼鏈接 如需要查看我全部代碼可以留下郵箱謝謝你們
1
EscYezi 2019-11-01 12:25:54 +08:00 via iPhone
代码可以放在 gist 上
|
2
rickyleegee OP @EscYezi 我貼不上鏈接 規定"发布这个内容需要你已经注册满 30 天" 我有上傳代碼去 gitlee 但是贴不上来 不好意思
或者可以麻煩你去 gitlee 抖索 leegeericky / Word Count python 應該能看到我的代碼? |
3
InkStone 2019-11-04 15:00:15 +08:00
python3 的字符串 len 默认就是计算 unicode 长度啊……你的代码比较乱我没看明白,不过我自己测试了一下:
>>> len("测试") 2 没什么问题啊。 |