详解Python文件: .py、.ipynb、.pyi、.pyc、​.pyd !

 
 
 
 
(永久免费,扫码加入)

来源丨麦叔编程

今天同事给我扔了一个.pyd文件,说让我跑个数据。然后我就傻了。。

不知道多少粉丝小伙伴会run .pyd代码文件?如果你也懵懵的,请继续往下读吧。。

今天科普下各类Python代码文件的后缀,给各位Python开发“扫扫盲”。

.py

最常见的Python代码文件后缀名,官方称Python源代码文件

不用过多解释了~

.ipynb

这个还是比较常见的,.ipynbJupyter Notebook文件的扩展名,它代表"IPython Notebook"。

a70c85ec7b3e4f250260a5a19aa0c17a.png

学过数据分析,机器学习,深度学习的同学一定不陌生!

.pyi

.pyi文件是Python中的类型提示文件,用于提供代码的静态类型信息。

一般用于帮助开发人员进行类型检查静态分析

示例代码:

hellp.pyidef hello(name: str) -> None:print(f"hello {name}")

.pyi文件的命名约定通常与相应的.py文件相同,以便它们可以被自动关联在一起。

.pyc

.pycPython字节码文件的扩展名,用于存储已编译的Python源代码的中间表示形式,因为是二进制文件所以我们无法正常阅读里面的代码。

cbcea8ec0daf4537b0ce59f6500ce635.png

.pyc文件包含了已编译的字节码,它可以更快地被Python解释器加载和执行,因为解释器无需再次编译源代码。

.pyd

.pydPython扩展模块的扩展名,用于表示使用CC++编写的二进制Python扩展模块文件。

.pyd文件是编译后的二进制文件,它包含了编译后的扩展模块代码以及与Python解释器交互所需的信息。

此外,.pyd文件通过import语句在Python中导入和使用,就像导入普通的Python模块一样。

由于CC++的执行速度通常比纯Python代码快,可以使用扩展模块来优化Python代码的性能,尤其是对于计算密集型任务。

6e49513fefc20c2fe3538f945f105898.png

.pyw

.pywPython窗口化脚本文件的扩展名。

它表示一种特殊类型的Python脚本文件,用于创建没有命令行界面(即控制台窗口)的窗口化应用程序。

一般情况下,运行Python脚本会打开一个命令行窗口,其中显示脚本输出和接受用户输入。但是,对于某些应用程序,如图形用户界面(GUI)应用程序,不需要命令行界面,而是希望在窗口中显示交互界面。这时就可以使用.pyw文件。

示例代码:

# click_button.pywimport tkinter as tkdef button_click():label.config(text="Button Clicked!")window = tk.Tk()
button = tk.Button(window, text="Click Me", command=button_click)
button.pack()label = tk.Label(window, text="Hello, World!")
label.pack()window.mainloop()

.pyx

.pyxCython源代码文件的扩展名。

Cython是一种编译型的静态类型扩展语言,它允许在Python代码中使用C语言的语法和特性,以提高性能并与C语言库进行交互。

我对比了下Cython与普通python的运行速度:

fb.pyx(需使用cythonize命令进行编译)

cdef int a, b, idef fibonacci(n):
if n <= 0:
raise ValueError("n必须是正整数")if n == 1:
return 0
elif n == 2:
return 1
else:a = 0b = 1
for i in range(3, n + 1):a, b = b, a + b
return b

run.py

import fb
import timeitdef fibonacci(n):
if n <= 0:
raise ValueError("n必须是正整数")if n == 1:
return 0
elif n == 2:
return 1
else:a, b = 0, 1
for _ in range(3, n + 1):a, b = b, a + b
return b# 纯Python版本
python_time = timeit.timeit("fibonacci(300)", setup="from __main__ import fibonacci", number=1000000)# Cython版本
cython_time = timeit.timeit("fb.fibonacci(300)", setup="import fb", number=1000000)print("纯Python版本执行时间:", python_time)
print("Cython版本执行时间:", cython_time)

得出结果:

纯Python版本执行时间: 12.391942400000516
Cython版本执行时间: 6.574918199999956

在这种计算密集任务情况下,Cython比普通Python效率快了近一倍。


最后推荐一下我们的会员群,目前有风投天使投资人,猎头HR,抖音大V,情感博主,律师,心理咨询师,医疗销售,地产,保险,钢琴老师,运营商,企业咨询,跨境电商,建筑,互联网行业的数据分析师,后端开发,python测试等行业的同学加入。

微信咨询:coder_v5 (务必备注你的来意)

性价比超高的星球

目前星球430+人,专栏的内容秘籍已经更新了41篇,每天都有星球发布自己心得。只花一份钱可以学:

Python : python 入门课程44节+Django专栏9节+趣味实战案例

chatgpt :入门,进阶,趣味办公,高级课程

AI绘画:Mj的基础,入门,进阶,小红书玩法

如果你想学Python,又想学ChatGPT,又想学AI绘画,只想花一份钱欢迎加入我们星球会员群,还能认识很多牛人!

加入就送ChatGPT独立账号

3e905fb3ad90dc992446302b98ae8d3e.jpeg

另外还送ChatGPT高级视频课程

原价99,现在免费送星球会员

cecdb3a31552bd875027e76f8dc2b02d.jpeg

微信长按试看内容

三天内不满意可直接退款!!!

a51a97f354c6887cfc3bdf7ba2e791bd.png

推荐阅读:
入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python  | 实战项目 |学Python就是这条捷径
干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 |   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |碟中谍这么火,我用机器学习做个迷你推荐系统电影
趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!
AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影
小工具: Pdf转Word,轻松搞定表格和水印! | 一键把html网页保存为pdf!|  再见PDF提取收费! | 用90行代码打造最强PDF转换器,word、PPT、excel、markdown、html一键转换 | 制作一款钉钉低价机票提示器! |60行代码做了一个语音壁纸切换器天天看小姐姐!|

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/63038.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一位老程序员的忠告:别想着靠技术生存一辈子

&#xff08;永久免费&#xff0c;扫码加入&#xff09; 来源&#xff1a;https://segmentfault.com/a/1190000009745139 一、 在一个地方工作8小时就是“穷” 在国内&#xff0c;你千万不要因为学习技术&#xff0c;就可以换来稳定的生活和高的薪水待遇&#xff0c;你更不要认…

大模型技术发展展望

来自&#xff1a;大大的模型 进NLP群—>加入NLP交流群 &#xff08;题目是ChatGPT起的&#xff0c;封面图是SD画的 本文纯属个人观点&#xff0c;抛砖引玉&#xff0c;欢迎后台留言探讨。&#xff09; 从去年年底发布以来&#xff0c;ChatGPT 已经被普通民众和业界广泛接受&…

Python 扩展教程(1): 调用百度AI

关于AI 自有计算机以来&#xff0c;人们就想让计算机具有人的感知、意识、概念、思维、行为&#xff0c;代替人的工作。AI (Artificial Interligence)是计算机科学的一个分支&#xff0c;专注研究、开发、模拟、扩展人的智能的理论、方法、技术及应用。 从研究领域和方法上&…

去TM的领导:发烧请病假,不意味着在家睡大觉

往期热门文章&#xff1a; 1、5年半老程序员被System.out.println() 考懵逼了... 2、妙用Java 8中的 Function接口&#xff0c;消灭if...else&#xff08;非常新颖的写法&#xff09; 3、Controller中的请求方法&#xff0c;private和public有什么区别&#xff1f; 4、再见Jenk…

上海车展归来,聊聊“无人驾驶”:滴滴疯狂炒概念,百度默默降成本

观点| Mr.K 主笔| Wendy.L 编辑| Emma 来源| 技术领导力(ID&#xff1a;jishulingdaoli) 最近一周在上海市最火热的是什么&#xff1f; 若是在国家会展中心举行的上海车展说是第二&#xff0c;恐怕没人再敢说第一。 汽车诞生百余年后&#xff0c;本次进入第二十届的上海车展…

百度,这下要歇菜了?

点关注公众号&#xff0c;回复“1024”获取2TB学习资源&#xff01; 谁也不会想到&#xff0c;一个非常小众的必应&#xff0c;居然把百度给"揍"了。 根据美国网站通讯流量监测机构 StatCounter 公布的数据显示&#xff0c;2023 年 4 月份&#xff0c;微软必应的市场…

5年半老程序员被System.out.println() 考懵逼了...

往期热门文章&#xff1a; 1、妙用Java 8中的 Function接口&#xff0c;消灭if...else&#xff08;非常新颖的写法&#xff09; 2、Controller中的请求方法&#xff0c;private和public有什么区别&#xff1f; 3、再见Jenkins&#xff01;一款更适合国人的自动化部署工具&#…

Controller中的请求方法,private和public有什么区别?

往期热门文章&#xff1a; 1、再见Jenkins&#xff01;一款更适合国人的自动化部署工具&#xff0c;贼带劲&#xff01;&#xff01; 2、MySQL中这14个小玩意&#xff0c;让人眼前一亮&#xff01;&#xff01;&#xff01; 3、Spring 官方证实&#xff01;大漏洞&#xff0c;J…

妙用Java 8中的 Function接口,消灭if...else(非常新颖的写法)

往期热门文章&#xff1a; 1、Controller中的请求方法&#xff0c;private和public有什么区别&#xff1f; 2、再见Jenkins&#xff01;一款更适合国人的自动化部署工具&#xff0c;贼带劲&#xff01;&#xff01; 3、MySQL中这14个小玩意&#xff0c;让人眼前一亮&#xff01…

SpringBoot + MDC 实现全链路调用日志跟踪

往期热门文章&#xff1a; 1、去TM的领导&#xff1a;发烧请病假&#xff0c;不意味着在家睡大觉 2、5年半老程序员被System.out.println() 考懵逼了... 3、妙用Java 8中的 Function接口&#xff0c;消灭if...else&#xff08;非常新颖的写法&#xff09; 4、Controller中的请求…

chatgpt赋能python:Python安装Kivy:强大的跨平台应用程序框架

Python安装Kivy: 强大的跨平台应用程序框架 Kivy是一个基于Python的跨平台开源应用程序框架&#xff0c;它可以用于开发多点触摸应用程序&#xff0c;使开发者能够轻松地创建适用于Windows&#xff0c;Mac&#xff0c;Linux&#xff0c;Android和iOS等平台的应用程序。Python作…

chatgpt赋能python:Python与界面绘制

Python与界面绘制 在现代计算机应用程序中&#xff0c;良好的用户界面设计和交互是至关重要的。它可以建立用户对应用程序的信任和舒适感&#xff0c;从而使应用程序更加实用和易于使用。而Python作为一种非常流行的编程语言&#xff0c;也提供了一些强大的工具和库&#xff0…

chatgpt赋能python:Python手机运行:轻巧便捷的编程语言

Python 手机运行&#xff1a;轻巧便捷的编程语言 Python作为一门高效&#xff0c;简单&#xff0c;易学的编程语言&#xff0c;逐渐成为程序员和数据科学家们的首选语言。无论是数据处理&#xff0c;机器学习还是人工智能&#xff0c;Python都具有出色的表现。不仅如此&#x…

chatgpt赋能python:Python调用ADBShell命令:使你的Android开发更高效

Python调用ADB Shell命令&#xff1a;使你的Android开发更高效 如果你是一名Android开发者&#xff0c;你一定会知道ADB&#xff08;Android Debug Bridge&#xff09;&#xff0c;它是一个可调试Android设备的多用途命令行工具。在许多情况下&#xff0c;ADB是许多Android开发…

Android 百度图像识别(详细步骤+源码)

百度图像识别 运行效果图一、创建平台应用二、创建Android项目三、网络访问框架四、添加请求API接口五、获取鉴权认证Token六、网络图片Url识别七、相册图片识别八、拍照图片识别九、源码 运行效果图 如果你对这个效果图不满意就不用往下看了&#xff0c;那样只会浪费你的时间。…

微信小程序,图像识别源码

目录 前言百度端配置信息小程序中代码&#xff1a;结语智能识图小程序源码下载路径&#xff1a;https://pan.baidu.com/s/1OGE7vhogS7L7nn0JIFPVWw 提取码&#xff1a;8ze9 前言 基于近期的工作内容关系&#xff0c;在查询一些资料的同时&#xff0c;在微信小程序端集成了图像…

图像识别小程序(含源码)【推荐】

目录 前言百度端配置信息小程序中代码&#xff1a;结语智能识图小程序源码下载路径&#xff1a;https://pan.baidu.com/s/1OGE7vhogS7L7nn0JIFPVWw 提取码&#xff1a;8ze9 前言 基于近期的工作内容关系&#xff0c;在查询一些资料的同时&#xff0c;在微信小程序端集成了图像…

(数学实验)Matlab实现猜数小游戏(增加了错误输入的判断)

刚开始做的时候不知道matlab没有自减运算&#xff0c;在网上查了很久资料&#xff0c;都没发现有对猜数游戏加错误输入判断的&#xff0c;经过多次试错&#xff0c;我弄出来了有判断的程序&#xff0c;在这里分享一下。 文章目录 前言一、问题描述二、解题思路 1.for循环2.whil…

使用Python为二年级的学生批量生成数学题

文章目录 一.使用Python为二年级的学生批量生成数学题1.1 背景 二.解决思路及其代码三.排版及其打印四.本文源码 一.使用Python为二年级的学生批量生成数学题 1.1 背景 我妹妹今年上二年级&#xff0c;她的老师今天给他们布置了一项作业&#xff1a; 从今天起到开学&#xff…

Fdog系列(一):思来想去,不如写一个聊天软件,那就从仿QQ注册页面开始吧。

文章目录 一.前言1. 基础布局2. 自动切换图片3. 添加内容4. 自动缩放&#xff0c;控件的显示和隐藏5.响应用户输入操作 所有文章源码已整体打包上传至github&#xff0c;求星星&#xff01; 一.前言 两年的大学生活马上就要结束了&#xff0c;马上面临实习&#xff0c;突然心…