python3和python2的区别

文章目录

      • 区别
        • ['start_new_thread' 不可调用](#'start_new_thread' 不可调用)

Python 2 和 Python 3 是 Python 语言发展史上的两个主要版本。Python 2 已于 2020 年 1 月 1 日正式停止维护(EOL),不再接收安全更新或功能修复。 目前所有的新项目都应使用 Python 3(推荐)。

为什么记录这个呢?因为实际遇到有些报错,就是因为使用了老版本的代码,记录下便于快速定位。

区别

特性 Python 2 (已废弃) Python 3 (当前标准) 影响程度
打印语句 print "Hello" (语句) print("Hello") (函数) ⭐⭐⭐ (语法错误)
整数除法 5 / 2 = 2 (向下取整) 5 / 2 = 2.5 (浮点除法) ⭐⭐⭐ (逻辑错误)
字符串编码 str 是 ASCII 字节串 str 是 Unicode 文本,bytes 是字节 ⭐⭐⭐ (乱码/崩溃)
输入函数 input() 执行代码,raw_input() 读字符串 input() 读字符串,raw_input() 已移除 ⭐⭐ (安全/逻辑)
范围生成 range() 返回列表,xrange() 返回迭代器 range() 返回迭代器,xrange() 已移除 ⭐ (性能)
异常处理 except Exception, e: except Exception as e: ⭐⭐ (语法错误)
迭代器 .next() 方法 __next__() 方法 / next() 函数 ⭐ (兼容性)
类型检查 type(1) is int (有时需小心) 类型体系更清晰,int 统一了 long ⭐
元类语法 __metaclass__ 属性 class MyClass(metaclass=MyMeta): ⭐
'start_new_thread' 不可调用

也是版本问题,start_new_thread是python2的。

相关推荐
BK贝壳5 分钟前
bool-hybrid-array 落盘我只认 .bha:用 Create_BHA / Ask_BHA 做布尔数组序列化
数据结构·python·numpy·1024程序员节
学逆向的20 分钟前
C 枚举变量
c语言·开发语言·网络安全
Sakura_j_h_31 分钟前
Python 在定时任务里输出 emoji,UnicodeEncodeError 从哪来
开发语言·字符编码·windows·python·定时任务
supabc1232 小时前
欧盟电子发票(XRechnung/Peppol/ZUGFeRD)踩坑记:用 Python 不装 Java 跑官方校验规则
xml·python·开源·电子发票·1024程序员节
ZhengEnCi2 小时前
AI Agent工具调用防护层怎么写-一份能直接跑的Python四层拦截实现
python·llm·agent
ZhengEnCi3 小时前
AI Agent工具误调用怎么解决-从参数校验到高危二次确认的四层工程防线
python·llm·agent
镜子AI4 小时前
镜子AI工程教程:用Python实现关键词布局检查器与语义改写查重(附完整代码)
人工智能·python·microsoft
小oo呆5 小时前
【学习心得】Python协程
python
信誓旦旦的程序猿5 小时前
【Python量化实战宝典 #22】涨跌停、连板情绪手册:情绪指标构建(Python 可跑)
python·1024程序员节·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口
gCode Teacher 格码致知5 小时前
Pandas教学-21:subplots的使用
python·pandas·1024程序员节