Python3 在团队中不被支持,如何说服同事使用 Python3?
last post: https://www.v2ex.com/t/356374
新项目,做机器学习和数据分析,项目还没有开始,预计会使用 docker ,然后已经有一些代码是 python2 实现了的。
Python3 在团队中不被支持,如何说服同事使用 Python3?
用 3
“哥们,这问题我熟。直接上干货,给你几个硬核理由和具体操作。
核心论点就三个:
- 官方已停止对Python 2的支持,这意味着没有安全更新、没有bug修复。用Py2等于给项目埋雷。这是最无可辩驳的技术事实。
- 生态已全面转向Py3。现在所有主流库(NumPy, Pandas, Django, Flask, Requests等)的新特性、性能优化都只针对Py3。为了用新工具、提升开发效率,必须升级。
- Py3本身就是更好的语言。
print变函数、真正的除法、统一的字符串类型(Unicode)、更清晰的字节/文本处理,这些特性让代码更健壮、更少坑。
具体怎么说服?别光说,做给他们看:
- 准备一个“移植指南”:把你们代码库里常见的Py2写法,对应到Py3的写法列出来。比如:
这能极大降低同事对迁移复杂度的恐惧。# Python 2 常见写法 -> Python 3 写法 print "hello" -> print("hello") xrange(10) -> range(10) dict.iteritems() -> dict.items() `raw_input()` -> `input()` - 搞个小型试点:挑一个非核心但又有代表性的模块或脚本,你先把它移植到Py3,确保所有测试通过。然后演示给团队看:“看,这个服务已经跑在Py3上了,没啥问题,这是改动的diff(差异对比)。”
- 利用工具:推荐用
2to3工具做初步转换,再用futurize(来自python-future)让代码能同时兼容Py2和Py3。你可以写个脚本演示如何自动化这个过程。 - 算笔账:强调 “现在不迁,以后迁移成本更高” 。随着时间推移,依赖的旧版库会越来越难维护,招新人也更难(现在新手都学Py3)。
总结建议: 用事实和工具降低迁移门槛,通过小范围试点证明可行性。
少数服从多数
尽量去写 2 和 3 都兼容的代码呗
几乎所有的同事都不支持用 es6 哎
我不管那么多,最近在学 3
该换个工作环境了?
就像我上家公司不支持用 JDK8 一样 QAQ
import six
新项目妥妥推荐上 3
我手头 2 个项目直接 Java6 升级到 Java8 ,反正没报错,哈哈
java 在这点不得不服
标准回复不是:等着过年?
公司最主要的项目已经在使用 Python 3.6 了。
哪个用着舒服就用哪个呗 。。。。
2020 年 Python2 都停止支持了,难道准备 3 年不到的时间内集体删库跑路吗?
未来是属于 Python 2 和 Python 4 的,学 Python 3 这种 dead language 干嘛
今天搞完了 python3 的 docker image ,什么 jupyterhub , tensorflow, scikit-learn 都装上了,晚上开始跟同事们撕逼
败!!! 寡不敌众。。。
准备把 docker image 改成 python2 的,然后发现 jupyterhub 竟然只支持 python 3
卒!!!
然后发现这个:
title: Sunsetting Python 2 support in scientific python projects
url: http://www.python3statement.org/
明天不准备撕了,毕竟老板永远是对的:doge:
还要留着时间找女朋友 :doge:
只要不是 jdk6 及以下都好说
几乎同事都不支持我用 ie6 诶
未来是属于 python10 ,学这些过度语言干嘛。。。
同时支持
历史的轮子,总得有人推着往前滚。
若真有必要转换到 Py3 可以到这里来
http://python3porting.com/
转吧
把他们都放倒,你就能安心用 py3 了。
谁叫 Python 没有 Java 那么 NB 的兼容性呢
各有各的苦恼啊
JAVA 为了兼容性采用类型擦除的假泛型被很多人吐槽,,而且现在泛型用了这么久了肯定更加改不了了,,估计永远都改不了了
Java 假泛型和真泛型语言如 C++ 、 C# 比有什么弱点: https://www.zhihu.com/question/24309599
几乎所有的同事都不支持用 win10 哎
别听那些人吹升 Python3
代码出问题的怎么办?
谁负责?能不能负责?损失谁负?
你考虑的是升级之后的特性多么多么炫酷,项目垮了怎么办?
楼主好像是在研究选择 Python2.7 作开发,还是用 Python2.7 做开发。他说项目还没开始。
当然是选择 Python2.7 作开发 (逃



