# How to choose between \`PyCall.jl\` and \`PythonCall.jl\`?

**URL:** <https://discourse.julialang.org/t/how-to-choose-between-pycall-jl-and-pythoncall-jl/100214>\
**Category:** General Usage\
**Tags:** question, package\
**Created:** [June 12, 2023, 6:09am UTC](https://discourse.julialang.org/t/how-to-choose-between-pycall-jl-and-pythoncall-jl/100214 "2023-06-12T06:09:20Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![oxinabox](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/oxinabox/32/206603_2.png) [@oxinabox](https://discourse.julialang.org/u/oxinabox)\
**Post date:** [June 12, 2023, 6:35am UTC](https://discourse.julialang.org/t/how-to-choose-between-pycall-jl-and-pythoncall-jl/100214/4 "2023-06-12T06:35:23Z")

</div>

I would say new users should mostly use PythonCall.jl.  
Firstly because better package management (PyCall.jl uses 1 Conda enviroment for everything, which is a bit of a nightmare if you have lots of different projects.).  
But secondly, based on [some comments from @stevengj](https://discourse.julialang.org/t/ann-pythoncall-and-juliacall/76778/24) (the maintainer of PyCall.jl) that PythonCall made a bunch of design choices that if there was to be a PyCall v2.0 he would have liked to change to do (but that he won’t as its too breaking).

---

_[View the full topic](https://discourse.julialang.org/t/how-to-choose-between-pycall-jl-and-pythoncall-jl/100214)._
