我们的Python 2的最终目标是什么?

python3可以运行python2的代码吗_Python2代码转Python3代码 Python2代码转Python3代码教程由于尤其是跑一些神经网络的代码时有很多是在 Python2 的环境下写的。在 Python3 下运行会遇见很多不兼容。Python2代码转Python3代码Python2 代码转 Python3 代码的一种方式是再安装一个 Python2,比如下载 anaconda 对应的 Python2 的版本,管理相关的库,运行的时候指定 Python2 运行。不过如... 阅读详情

前言

每隔一段时间,我都会思考我们最终的Python 2结局是什么的问题。 我们迟早会达到某种结局的情况;例如,Ubuntu已经取消了对/usr/bin/python是Python 2的支持,尽管你仍然可以用手来做。有一天,他们(和其他人)可能会规定/usr/bin/python是Python 3,或者完全删除Python 2的包,或者两者都是。当事情发展到这种状态时,我们该怎么办呢?(文末送福利)

这有两个方面:我们要对自己的仍然使用 Python 2 的脚本做些什么,以及对我们的用户和他们的脚本会发生什么。对于我们自己的脚本,可以把它们改写成Python 3,或者在它们的#!行中改成使用不同的Python解释器路径,包括PyPy。由于我们控制着它们以及任何使用没有Python 2的操作系统的时机,我们至少不会被打懵。我对我们自己的脚本的最终结局的初步猜测是,我们可能会使用PyPy,尽管我们可能会选择将它们转移到Python 3上。

(当CPython 2从Ubuntu和其他操作系统上消失时,我们剩下的Python 2脚本很有可能全部被淘汰了。要让它们过时,可能需要一个完全从头开始的新基础设施。

对于我们的用户来说,有好消息也有坏消息。好消息是,作为一个大学部门,我们的用户有一定程度的自然流动;当有人毕业离开时,他们大多不再关心他们在这里的Python 2脚本(或者转到另一个博士后职位,或者任何其他事情)。坏消息是,我们目前似乎有相当多的人在使用’/usr/bin/python’,而我们甚至没有寻找到运行’/usr/bin/python2’或其他别名的人。其中一些使用可能是自动化的 (在 cron jobs 和类似的东西中),还有一些可能是来自未来几年的人。此外,并不是所有对 Python 2 的使用都是在定期运行的脚本中 (我们可以通过像 Linux 的审计框架这样的机制来捕捉);其中一些可能是在偶尔才运行一次的脚本中。

除非我们运气好,事情被推迟了相当长的时间,否则改变 /usr/bin/python (删除它或改为 Python 3) 或删除 Python 2 似乎很可能会让我们的一些用户陷入困境。我们可能无法提前找到所有的用户,或者即使我们找到他们并通知他们,也无法让他们全部改变。为了减少这方面的问题,我们也许应该现在就开始行动,阻止使用 Python 2 (并识别使用它的人)。

如果可能的话,破坏性最小的结局是继续拥有/usr/bin/python和CPython 2(在通常的地方),即使我们自己提供。然而,保持’/usr/bin/python’这个名字的作用可能会妨碍把人们从Python 2中赶走的努力;在结局的某个时刻,我们可能想移除它,或者让它变成Python 3。虽然我们可以在自己的脚本中使用PyPy 2,但它并不能替代CPython,有些程序在使用CPython时肯定会失败。

(另外,我也不能绝对肯定PyPy在十年后还会有Python 2版本。是的,我正在考虑那么远的未来)。

一个更具破坏性的结局是Ubuntu坚持认为/usr/bin/python是Python 3,而不再提供Python 2。如果我们有相对较少的人使用明确的"/usr/bin/python2",我们可能会完全放弃对CPython 2的官方支持。希望Ubuntu仍能提供PyPy 2,这样人们除了将他们的脚本迁移到Python 3之外,还有一些选择。

第三种结局是 "清除残余 "的选择。当Ubuntu完全放弃Python 2时,我们也会这样做,而不考虑剩余的用途;我们不会自己手工构建CPython 2或任何东西。我们会以某种方式处理自己的脚本,而其他人就只能靠自己了,最多只能安装Ubuntu版本的PyPy 2(如果有的话)。这种结局对人们的干扰最大,但从某种程度上说是最协调的,从长远来看对我们来说也是最省事的。

PS:Fedora不久前强迫/usr/bin/python变成了Python 3,说实话,这对我来说是件好事。我不得不匆忙改变一些脚本,但在那之后,运行 "python "可以得到我想要的版本,这很好。这也是推动我使用Python 3而不是Python 2的一个好方法。

知道你对Python感兴趣,便准备了这套python学习资料

对于0基础小白入门:

如果你是零基础小白,想快速入门Python是可以考虑培训的。

一方面是学习时间相对较短,学习内容更全面更集中。

零基础Python学习资源介绍

👉Python学习路线汇总👈

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取哈)

👉Python必备开发工具👈

温馨提示:篇幅有限,已打包文件夹,获取方式在:文末

👉Python学习视频600合集👈

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

👉实战案例👈

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

👉100道Python练习题👈

检查学习结果。

👉面试刷题👈



在这里插入图片描述

资料领取

上述这份完整版的Python全套学习资料已经上传优快云官方,朋友们如果需要可以微信扫描下方优快云官方认证二维码输入“领取资料” 即可领取

在这里插入图片描述

好文推荐

了解python的前景:https://blog.youkuaiyun.com/weixin_49895216/article/details/127186741

了解python能做什么:https://blog.youkuaiyun.com/weixin_49895216/article/details/127124870

[python]如何兼容python2和python3 可以使用@python_2_unicode_compatible示例:原来代码# coding:utf-8 from django.db import models class Article(models.Model): title = models.CharField(u'标题', max_length=256) content = models.TextField(u... 阅读详情

相关推荐

CentOS Python2.4升级到Python2.7

本来python是2.4的,好像不支持requests模块.我就升级到python2.7,结果yum又不能用了.下面是完整的解决方案. Python升级 # yum install gcc gcc-c++.x86_64 compat-gcc-34-c++.x86_64 openssl-devel.x86_64 zlib*.x86_64 # wget http://www.pyth

firefoxbug的专栏 3750

【Python】Python和PyPy的区别、字符串的大小写转换函数、eval()函数

【Python】Python和PyPy的区别、字符串的大小写转换函数、eval()函数

学习笔记 1576

PyPy2 v590 Python 2.7.13

PyPy是用Python实现的Python解释器。PyPy是Python开发者为了更好的Hack Python创建的项目。此外,PyPy比CPython是更加灵活,易于使用和试验,以制定具体的功能在不同情况的实现方法,可以很容易实施。 该项目的目标是,让PyPy比C实现的Python更为容易的适应各个项目和方便裁剪。 PyPy是Armin Rigo开发的,Python语言的动态编译器,是Psyco的后继项目。PyPy的目的是,做到Psyco没有做到的动态编译。 PyPy开始只是研究性质的项目。但是开发非常成熟,在2007年中旬发布了1.0 Release版本后,大家关注的焦点是,能否在2008年出现可供生产环境使用的版本。 最新的PyPy版本是PyPy3 2.1 beta1,兼容Python3.2.3。可以运行在Linux的32位和64位、MacOSX和Windows的32位平台中,但是基于arm平台的正在开发中。它支持Python语言的所有核心部分以及大多数的Python语言标准库函数模块,并且通过了Python语言的test suite。与CPython的区别可以去看它的兼容性页面. PyPy还提供了JIT编译器和沙盒功能,因此运行速度比CPython要快,以及可以安全的运行一些不被信任的代码。PyPy还有一个单独的支持微线程的版本。 另外,PyPy 也有 每夜构建 版本供开发者测试。 PyPy是作为Specific Targeted Research Projects(特定领域研究项目)从2004年12月到2007年3月,开始接受欧盟的援助。

Python 入门:Python 2 与 Python 3 之间的区别

答:是的,当人们在当前编程环境中提到“Python”时,他们通常指的是 Python 3。对于具有 Python 2 背景的现有开发人员,学习 Python 3 仍然是可取的,因为该语言的发展以及为当代项目工作和做出贡献的必要性。在 Python 3 中获得的技能是可迁移的,并且在从 Web 开发到机器学习的各种应用程序中都有很高的需求,这使其成为编程教育的宝贵投资。函数作为语句,因此要打印的文本周围的括号是可选的,但这可能会导致歧义,因为它偏离了函数的标准使用,这需要将参数括在括号中。

新华编程特战队 1301

pypy2-v6.0.0

pypy2-v6.0.0,pypy最新版压缩包,是Python2.7替代产品,支持大多数的常用python标准包

AutoDock Vina实战:从零开始完成分子对接(附7VU6案例详解)

本文提供了一份详细的AutoDock Vina分子对接实战指南,以SARS-CoV-2 3CL蛋白酶(PDB ID: 7VU6)为例,从零开始手把手教学。内容涵盖软件安装、环境配置、受体与配体文件准备、对接参数设置,以及结果分析与可视化解读,旨在帮助计算生物学与药物发现领域的新手快速掌握这一核心技能。

ooo22的博客 536

python的未来-pypy

PyPy是一个虚拟机项目,主要分为两部分:一个python的实现和 一个编译器       PyPy的第一部分: 用Python实现的Python    其实这么说并不准确,准确得说应该是用rPython实现的Python,rPython是Python的一个子集,虽然rPython 不是完整的Python,但用rPython写的这个Python实现却是可以解释完整的Python语言。

感悟编程 3889

MiniMax H3本地部署与ComfyUI集成实战:从环境配置到提示词优化

文本到视频生成是AI内容创作领域的关键技术,它基于扩散模型等深度学习原理,将自然语言描述转化为连贯的动态视觉序列。这项技术的核心价值在于大幅降低了视频制作的门槛,为短视频创作、概念可视化、教育内容生成等场景提供了高效工具。在实际工程实践中,成功部署和运行此类模型,如近期备受关注的MiniMax H3,需要精准处理环境配置、显存优化和提示词工程等环节。其中,解决“CUDA error: no kernel image is available”等版本兼容性问题,以及针对“8G显存”等有限资源进行参数调优,是确

weixin_33674976的博客 478

python列表转字符串长度_将范围(r)转换为python中长度为2的字符串列表

我只想将列表(我使用范围(r))更改为字符串列表,但如果字符串的长度为1,则在前面添加0.我知道如何使用列表将列表转换为字符串ranger= map(str,range(r))但我希望能够改变这些字符串的长度.输入:r = 12ranger = range(r)ranger = magic_function(ranger)输出:print ranger>>> ['00','01'...

weixin_34665982的博客 495

Mac 环境配置jdk、Maven

3、终端打开配置jdk时候建好的脚本文件: open -e .bash_profile。4、查看maven是否安装成功和系统能不能识别maven/mvn命令:⬇️。输入⬇️并保存: 其中第一行JAVA_HOME替换为自己下的jdk路径。,安装编译好的二进制版本,具体安装zip还是tar.gz我看的。5、查看jdk是否安装成功和系统能不能识别java命令:⬇️。至此,我的Mac系统的环境配置jdk、Maven完成!然后就发现我的maven命令还是没作用,不识别,下载后直接安装即可,很快,点几下就OK了。

weixin_42416791的博客 4400

企业级 Agent 在 K8s 上的运行模型

Kubernetes├── Agent Orchestrator(控制面)├── Agent Runtime Pods(执行面)├── Graph DSL(流程层)├── Tool Services(能力层)K8s(调度)+ Graph(流程)+ Agent(决策)+ Tool(执行)+ Guard(治理)

一起修行,不孤单。这里有编程语言、开发工具、学习方法论和踩坑笔记。用简单的话说复杂的事,陪你从小白到进阶。周更干货,欢迎一起成长! 1172

yield在python中是什么意思_yield在python 2.7中做什么?

好吧,我可能把这个问题表达得很糟糕,但这就是我遇到的情况。我在Python2.7中有一行代码,我试图理解:yield (padding_zeros + number_string).encode("ascii")在这行代码中,padding_zeros是一个可变数字“0”的字符串,number_string是一个字符串形式的数字,可以是0到10000之间的任何数字。我非常确信.encode("as...

weixin_39683863的博客 218

嵌入式开发避坑指南:手把手教你用STM32CubeMX配置W9825G6KH SDRAM(含时序参数详解)

本文详细介绍了如何使用STM32CubeMX配置W9825G6KH SDRAM,包括硬件连接检查、CubeMX初始化步骤、时序参数优化及稳定性问题排查。通过实测波形分析和案例分享,帮助开发者避免常见配置错误,提升嵌入式系统性能与稳定性。

weixin_42542669的博客 197

ubuntu编写python程序_Ubuntu包需要编译Python 2.7

假设您已经安装了所有依赖项(在Ubuntu上,这将是一堆诸如sudo apt-get install libdb4.8-dev和各种其他的-dev软件包,那么我是如何构建Python的.tar zxvf Python-2.7.1.tgzcd Python-2.7.1# 64 bit self-contained build in /optexport TARG=/opt/python272expo...

weixin_39988677的博客 320

VMware Horizon 8 2111 部署系列(九)创建即时克隆桌面池

即时克隆桌面池是在 vCenter Server 中使用 vmFork 技术(称为即时克隆 API)从最佳配置映像创建的自动桌面池。即时克隆共享同一个基础映像虚拟机,使用基础映像虚拟机的快照创建的,它使用的存储空间也少于完整虚拟机。 即时克隆始终保持开机状态,并在注销后从当前发布的映像重新创建。...

白昼的技术专栏 4043

锐捷 MPLS VPN 配置

ISP内部配置 , PE设备和CE设备之间的接口不开启 ( 只在物理接口上配置 , loopback 口不配置 )最后一步关闭 ipv4 单播 , 如果你发现路由奇奇怪怪的 , 可以尝试一下。both --> 同时配置 import export 值。绑定后接口会重置 , 且接口的路由会转到VRF路由表中。这里基本上绑定了 vrf 实例的接口都需要宣告进去。vpnv 4 通道是用来传递 mpls 路由的。先建立邻居管理,建立VPNV4通道。这里要做双向引入 , 才会有路由。export 导出值。

dekangzou的博客 1711

kosbie的python课程视频,在Python 2中绘制基本形状

How would I draw a simple partially transparent rectangle in python. I would like to not download anything from the internet and purely use python 2.7.3. I would like to also control where the rectang...

weixin_42347699的博客 124

【已解决】飞牛nas(fnOS)异常断电导致硬盘未挂载(无法挂载),系统内部错误修复、救回数据全流程!(含更新系统后外接 NTFS 格式硬盘丢失的修复方法)

fnOS 飞牛NAS遭遇非正常断电后,存储空间显示「未挂载」或更新系统后外接 NTFS 格式硬盘丢失,点击挂载提示「系统内部错误」!💥 博主已经完美恢复,本文记录了相关的解决方案,帮您恢复或最大程度保住重要数据🎉

XiaoqiangClub的博客 2217

python最终目标_Python晋级之路-工欲善其事必先利其器

猴子老师Live中用一个盖房子的例子,很好的解释了大多数零基础朋友开始学习编程时的迷茫。面对一个客户需求,如何分三个步骤就能得出最后的结果。我简单整理一下,第一步先仔细分析客户的需求,明确最终目标(盖什么样的房子,即明确设计图纸);第二步根据要达到的目标要求,选择合适的工具、语言以及搭建相应的开发环境(根据图纸,分析需要打什么样的地基);第三步在搭建好的开发环境下,运用各种变量、函数、条件循环等手...

weixin_39524882的博客 244

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

python最终目标是什么_Python之父Guido谈Python的未来

6月初,Python之父Guido van Rossum在今天的PyCon US大会上作了名为“Python Language”的演讲。近日,他又接受了IT媒体Infoworld的采访,大谈Python的未来。我们一起来看看Guido老爹对Python的 未来是怎么看的吧。感兴趣的朋友们,想学习python的朋友 可以关注私信小编呀!!Python在移动计算领域的应用Guido:移动对Python...

weixin_39741101的博客 259

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

python最终目标_程序查找在python中达到最终目标所需的最少总线数

假设我们有一个3矩阵,其中每行包含三个字段[src,dest,id],这意味着总线具有从src到dest的路线。上一辆新巴士要花一单位的钱,但是如果我们坐同一辆车,我们只需要付一单位的钱。我们必须找到从位置0到终点站(最大的位置)乘公共汽车所需的最低费用。如果没有解决方案,则返回-1。所以,如果输入像010120230351502则输出将为2,因为我们可以在位置0处取0,然后在位置3处下车。然后我...

weixin_35792468的博客 206

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

如何从python2升级到python3

如何将Mac python2 升级到python3 #查看当前Python版本 appledeMBP:~ apple$ python --version Python 3.5.1 查看Python路径 appledeMBP:~ apple$ which python /usr/local/bin/python 查看全部Python路径 appledeMBP:~ apple$ echo $PATH ...

suntingting_100的博客 3027

python最终目标是什么_使用Python的Mock库进行PySpark单元测试

测试是软件开发中的基础工作,它经常被数据开发者忽视,但是它很重要。在本文中会展示如何使用Python的uniittest.mock库对一段PySpark代码进行测试。笔者会从数据科学家的视角来进行描述,这意味着本文将不会深入某些软件开发的细节。单元测试和mock是什么?单元测试是一种测试代码片段的方式,确保代码片段按预期工作。Python中的uniittest.mock库,允许人们将部分代码替换为...

weixin_39987926的博客 143

python最终目标_Python 从入门到精通:只要2019年最后两个月就够了

前言毫无疑问,Python 是当下最火的编程语言之一。对于许多未曾涉足计算机编程的领域「小白」来说,深入地掌握 Python 看似是一件十分困难的事。其实,只要掌握了科学的学习方法并制定了合理的学习计划,Python 从 入门到精通只需要两个月就够了!要知道,一个月是一段很长的时间。如果每天坚持用 6-7 小时来做一件事,你会有意想不到的收获。作为初学者,第一个月的月目标应该是这样的:熟悉基本概念...

weixin_31725659的博客 127

列举python2和python3的区别,python 2和python 3的区别

大家好,给大家分享一下python2和python3的区别有哪些?,很多人还不知道这一点。下面详细解释一下。现在让我们来看看!几乎所有的python2程序都需要一些修改才能正常的运行在python3的环境下。为了简化这个转换过程,Python3自带了一个2to3的实用脚本。这个脚本会将python2程序源文件作为输入,然后自动转换到python3.但并不是所有内容都可以自动转换。

yang0728y的博客 1136

python 3to2 2to3-python3转python2 python2转python3

python - 3to2 | 2to3 - python3转python2 | python2转python3 文章目录python - 3to2 | 2to3 - python3转python2 | python2转python33转23to2安装使用py-backwards安装使用2转32to3使用**转换命令**参考文档 注意:文件名不要带中文。 3转2 3to2 安装 # 安装3to2 $ pip3 install 3to2 使用 # 显示帮助 $ 3to2 -h Usage: 3to2 [

卓懿的博客 929
上一篇: 学习Python需要多长时间?
下一篇: 每个程序员都应该知道的高级 Python 技术(附零基础学习资料)
黑客老许
博客等级 码龄8年 6153粉丝 1028原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值