首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python 学习手册
Python Cookbook
Python 基础教程
Python Sites
PyPI - Python Package Index
http://www.simple-is-better.com/
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
V2EX  ›  Python

Pycharm 中的 terminal 和系统的 terminal 有什么区别?

  •  
  •   ooleslie · 41 天前 · 1413 次点击
    这是一个创建于 41 天前的主题,其中的信息可能已经有所发展或是发生改变。
    RT
    为什么我在 pycharm 的 terminal 中用 scrapy startproject filename 指令无效,只能在外面的 terminal 上用
    有达人可以指点下这个 terminal 和系统的区别么?
    第 1 条附言  ·  40 天前
    在这里写下解决方案

    系统的 terminal 中运行

    which bash--->/bin/bash
    which python--->/anaconda3/bin/python

    pycharm 中的 terminal 中运行

    which bash --->/bin/bash
    which python --->/usr/bin/python

    然后 pycharm 中 interpreter 中设置的解释器位置是:/Users/tnb/.conda/envs/1stconda/bin/python
    terminal 设置中显示的位置是:/bin/bash

    在这种情况下,cd 到 scrapy 爬虫文件位置是会提示不存在 scrapy 指令的

    解决方法:
    在 pycharm 的 terminal 中:
    alias python="/Users/tnb/.conda/envs/1stconda/bin/python"
    source ~/.bash_profile

    再在 pycharm 中运行 which python 显示指向 /anaconda3/bin/python (这个我猜测就是 /Users/tnb/.conda/envs/1stconda/bin/python 的快捷方式,毕竟我们关联的是这个位置)

    在运行指令就 ok 了。感动,第一次比较清晰的解决了问题
    原因应该在于 pycharm 本身的配置文件中应该有关于 python 的配置,导致和系统不一致,更好的解决方法是能够找到 pycharm 的配置文件,再改,这样还能顺便看看配置文件里面都有啥。不过我的水平有限,这个操作暂时意义不大,就先这么解决

    谢谢大家的指点
    第 2 条附言  ·  29 天前
    最终答案,谢谢底楼:
    因为 pycharm 不会自动加载 .bashrc 和 .profile
    22 回复  |  直到 2019-01-21 01:37:03 +08:00
        1
    Ahs   41 天前 via Android
    要看你 pycharm 里的
        2
    ooleslie   41 天前
    @Ahs 可以再说一遍么。。后半句没听清。。
        3
    wibile   41 天前   ♥ 1
    跟 interpreter 有关啊,先搞清楚系统环境,虚拟环境,环境变量等等这些
        4
    Ahs   41 天前 via Android   ♥ 1
    不小心发出去了。看你当前工程里的 pycharm 的 python interpreter 是不是系统的还是 virtualenv 里
        5
    ooleslie   41 天前
    @wibile 谢谢,有专门介绍系统环境,虚拟环境,环境变量的意义的书么?
        6
    akring   41 天前
    目测是虚拟环境没有 scrapy
        7
    raycool   41 天前
    以前 pycharm 打开终端 直接就是当前的虚拟环境了
    不知道什么时候开始,不直接进入虚拟环境了,需要手动。
        8
    ooleslie   41 天前
    @akring 嗯 是的。。
        9
    ooleslie   41 天前
    @akring 不对呀,还是不行呀,我加了 scrapy 后 还是显示 command not found
        10
    visitant   41 天前 via iPhone
    好巧啊,又是你,这个我可能没法帮你了,pycharm 用的不多,不过 idea 系列里的 terminal 好像都是打开的系统默认的 shell 啊,按楼上说的,你可以看看 terminal 激活的 python 是哪个,用 which python
        11
    visitant   41 天前 via iPhone
    @ooleslie 你看看系统的 terminal 和 pycharm 的 PATH 一样不
        12
    jiangnanyanyu   40 天前 via Android
    又碰到你了😳
        13
    ooleslie   40 天前 via Android
    嗯嗯,
        14
    ooleslie   40 天前 via Android
    @visitant 嗯嗯,在 pycharm 里面有 terminal 的 setting,我现在住的地方到晚上 wifi 信号干扰比较厉害 网卡 就会偷懒上来问。。。
        15
    ooleslie   40 天前 via Android
    @jiangnanyanyu 是呀 最近开始练项目了 自学 基础的问题比较多
        16
    gnozix   40 天前
    @visitant 这位仁兄说的不错,另外传教一波,pipenv 了解一下
        17
    cyspy   40 天前
    PATH 不一样
        18
    ooleslie   40 天前
    @cyspy 还是不行呀,我用 which bash 指令看了位置,是一样的,都是在 /bin/bash 下面啊,但是 pycharm 上就是走不了 scrapy 的命令,其他系统命令可以走,interpreter 的包里面也有 scrapy。。还有可能是什么原因呀
        19
    ooleslie   40 天前
    @cyspy 哦 我知道原因了,不是 bash 的 path,是 python 的 path,terminal 的 python path 配置没有跟着 interpreter 走,我看看怎么改
        20
    visitant   40 天前 via iPhone   ♥ 1
    @ooleslie 你用错了,是 which python,which bash 的结果肯定都是一样的啊,我觉得你现在不应该纠结这些,你需要去看看 linux 入门教程,shell 入门教程,了解一下 linux 的知识。如果你是准备单纯的用 python,就不要纠结这些知识,如果想,请参考我前面说的内容
        21
    ooleslie   40 天前
    @visitant 嗯,是不应该在这些上面花太多时间。。其实很多指令都看过一遍了,但是没有配套的练习,又忘了。。
        22
    Qzier   30 天前 via iPhone   ♥ 1
    因为 pycharm 不会自动加载 .bashrc 和 .profile
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   811 人在线   最高记录 4385   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 24ms · UTC 21:47 · PVG 05:47 · LAX 13:47 · JFK 16:47
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1