V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
? Learn Python the Hard Way
Python Sites
? PyPI - Python Package Index
? http://diveintopython.org/toc/index.html
? Pocoo
值得关注的项目
? PyPy
? Celery
? Jinja2
? Read the Docs
? gevent
? pyenv
? virtualenv
? Stackless Python
? Beautiful Soup
? 结巴中文分词
? Green Unicorn
? Sentry
? Shovel
? Pyflakes
? pytest
Python 编程
? pep8 Checker
Styles
? PEP 8
? Google Python Style Guide
? Code Style from The Hitchhiker's Guide
Hamao
V2EX  ?  Python

使用 pipreqs 遇到了一个奇怪的问题

  •  
  •   Hamao · 10 天前 · 581 次点击

    腾讯云最新优惠活动来了:云产品限时1折,云服务器低至88元/年 ,点击这里立即抢购:9i0i.cn/qcloud,更有2860元代金券免费领取,付款直接抵现金用,点击这里立即领取:9i0i.cn/qcloudquan

    (福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

    环境:conda python3.10 系统:M1 Mac

    输入: pipreqs /Users///fastapi_llama --force pipreqs ./ --encoding=utf8

    报错信息: ERROR: Failed on file: ./.conda/lib/python3.1/lib2to3/tests/data/different_encoding.py Traceback (most recent call last): File "/opt/anaconda3/envs/ai_project/bin/pipreqs", line 8, in <module> sys.exit(main()) File "/opt/anaconda3/envs/ai_project/lib/python3.10/site-packages/pipreqs/pipreqs.py", line 609, in main init(args) File "/opt/anaconda3/envs/ai_project/lib/python3.10/site-packages/pipreqs/pipreqs.py", line 533, in init candidates = get_all_imports( File "/opt/anaconda3/envs/ai_project/lib/python3.10/site-packages/pipreqs/pipreqs.py", line 153, in get_all_imports raise exc File "/opt/anaconda3/envs/ai_project/lib/python3.10/site-packages/pipreqs/pipreqs.py", line 139, in get_all_imports tree = ast.parse(contents) File "/opt/anaconda3/envs/ai_project/lib/python3.10/ast.py", line 50, in parse return compile(source, filename, mode, flags, File "<unknown>", line 3 print u'?àá??????èéê?ìí????òó????ùú?ü?????????????????????????????????' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SyntaxError: Missing parentheses in call to 'print'. Did you mean print(...)?

    然后我点开 ./.conda/lib/python3.1/lib2to3/tests/data/different_encoding.py 发现这里面就是乱码: #!/usr/bin/env python print u'?àá??????èéê?ìí????òó????ùú?ü?????????????????????????????????'

    def f(x): print '%s\t-> α(%2i):%s β(%s)'

    我的问题: 1.无法使用 pipreqs ,有什么解决的办法? 前几天还是用这个导出的 翻了部分 issue 和 google 都没得到解决,所以发帖请教

    8 条回复  ?  2024-04-24 15:31:40 +08:00
    Latin
        1
    Latin  
       10 天前
    Hamao
        2
    Hamao  
    OP
       10 天前
    @Latin ok 这个是可以用的
    Hamao
        3
    Hamao  
    OP
       10 天前
    但是我还是很好奇上面错误的逻辑?
    noahlias
        4
    noahlias  
       10 天前
    看情况你用到了 python2 ?这貌似是你的代码问题
    不过不对啊 为啥你会去找 conda 下的 python3.1 ?
    似乎是你的 conda 配置问题
    noahlias
        5
    noahlias  
       10 天前
    问题找到了
    https://github.com/conda/conda/issues/11065

    建议升级 conda
    Hamao
        6
    Hamao  
    OP
       10 天前
    感谢 帮忙找到一个 issue ,但是 我目前的版本已经是 24 年最新的了,感觉还是我环境太乱了 我再研究一下
    noahlias
        7
    noahlias  
       10 天前
    @Hamao 说实话你都有 conda 了直接 conda list --export 就可以了 或者你创建 env 的时候指定--file 不就行了吗
    Hamao
        8
    Hamao  
    OP
       10 天前
    @noahlias 主要是想着 pipreqs 只会导出项目相关的。只不过也没关系 conda 全导出算了 难为自己?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   756 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 22:07 · PVG 06:07 · LAX 15:07 · JFK 18:07
    Developed with CodeLauncher
    ? Do have faith in what you're doing.


    http://www.vxiaotou.com