电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

python編程的核心知識點總結

瀏覽:128日期:2022-06-28 09:00:27
一、為什么提出python編程的核心是什么?

我想要Python實現,這已經不是什么秘密了。WebAssembly它不僅會讓Python進入瀏覽器,而且事實是兩者都是IOS和安卓支持將JavaScript作為應用程序的一部分運行,它還可以讓Python進入移動平臺。這一切都讓我興奮。

但是當想到創建Python的新實現這一艱巨任務時,我的大腦也開始問到底是什么東西。是Python?我們一起生活過CPython長期以來,我懷疑我們大多數人只是認為“Python==CPython”。皮皮試著這么做兼容他們將實現CPython的實現細節。基本上,據我所知,Python的大多數實現都力求通過CPython的測試套件,并盡可能與CPython兼容。

這太令人望而生畏了。由CPython實現的Python是非常動態的,并且暴露了許多只有在您使用解釋器實現Python時才有意義的事情。例如,PyPy有一個基線解釋器,他們使用JIT,但是在Python中可以使用很多東西,這些東西迫使PyPy關閉JIT并繼續使用字節碼。僅REPL本身就使事情變得非常動態,因為您輸入到REPL中的所有內容都是由解釋器動態解析、編譯和執行的。

這讓我思考了到底是什么是Python?語言的核心是什么?所有Python實現都需要覆蓋哪些基線,才能真正將自己稱為Python的實現,而人們仍然會認識到這一點?或者從我的角度來看,要將Python直接編譯到WebAssembly并仍然被認為是Python實現,還需要實現多少呢?

二、Python需要REPL?

真正讓我開始思考這個問題的是,當我開始思考如何將Python編譯成WebAssembly時?沒有實現另一個解釋器,但實際上從Python源發出靜態WebAssembly,并且仍然合理地稱之為“Python”。

我知道的一件事是通過動態編譯eval()或compile()很難做到WebAssembly安全模型在加載時驗證模塊。這意味著在其他代碼的內存空間中不存在只運行任意代碼的結構化結構,這可能會使REPL的實現變得很棘手。

但這讓我想:Python真的需要REPL?不要誤解我的意思,它非常方便,但是如果一個實現沒有REPL,它會不會不再成Python?我認為沒有REPL的Python仍然是Python,它只是缺少一個(可能的鍵)特性。

三、Python的哪些部分需要被視為“Python”?

你能活下去嗎locals()?能夠任意地將所有定義的局部變量及其值收集到字典中是一件非常動態的事情。如果您是在一個整數(如CPython)中,您只需從當前執行框架中收集一些內容,就可以得到局部變量。但是在編譯語言中,這需要做更多的工作,因為您必須知道何時收集所有這些信息,因為不一定只是在調用時躺在那里。locals().或者其他人locals()本身?再說一次,這在CPython中并不是什么大問題,因為builtins模塊有一個__dict__您可以覆蓋它,它將簡單地傳播到任何未來的調用。但是在一種編譯語言中,做這種檢測需要付出更多的努力,這樣的檢查最終要花費性能。

關于sys.settrace()?它實際上會觸發每個字節碼的回調,如果編譯了代碼,這就不太起作用了。您可以通過檢查在每一行之后是否設置了跟蹤函數來偽造它,但是當大多數時候沒有設置這樣的鉤子時,這看起來就有點麻煩了(不過,在這種支持下編譯可能是一個編譯器標志)。

那你覺得呢?sys._getframe()?編譯后的語言不一定會直接訪問執行框架,所以您是否需要進行模擬呢?由于任何函數都可以請求執行框架,因此您需要隨時準備按需提供執行幀。

正如您所看到的,Python中有很多東西使得編譯變得困難(因此更強大到努特卡接受這個挑戰)。但我敢打賭,我上面提到的東西--你不會在99.9%的時間里使用它們,所以如果一個實現忽略了它們,它還能被認為是“Python”嗎?

四、需要多少兼容性才能有用?

我對這個問題沒有很好的答案。但它的答案決定了實現Python有多困難,以及它與現有軟件的兼容性。我要說的是,我認為WebAssembly不需要支持大量的Python軟件才有用。WebAssembly可以訪問其他語言生態系統,如Rust和JavaScript,因此您需要用另一種語言實現一些您可以使用的其他語言的可能性肯定在零以上。

我沒有答案

開發一個直接將Python代碼轉換為WebAssembly并為性能犧牲一些兼容性的編譯器可能是有意義的。開發一個針對WebAssembly設計但與已有代碼保持大量兼容性的解釋器可能是有意義的。簡單地支持RustPython在他們的WebAssembly的努力中。也許吧皮笛會把我們帶到那里。我不認為任何這些可能性本質上都是錯誤的,它很可能會歸結到任何一個足以激發人們的興趣,看到它對他人有用的程度。

到此這篇關于python編程的核心知識點總結的文章就介紹到這了,更多相關python編程的核心是什么內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: X光检测仪_食品金属异物检测机_X射线检测设备_微现检测 | 粉末包装机-给袋式包装机-全自动包装机-颗粒-液体-食品-酱腌菜包装机生产线【润立机械】 | 整合营销推广|营销网络推广公司|石家庄网站优化推广公司|智营销 好物生环保网、环保论坛 - 环保人的学习交流平台 | 智慧农业|农业物联网|现代农业物联网-托普云农物联网官方网站 | 彭世修脚_修脚加盟_彭世修脚加盟_彭世足疗加盟_足疗加盟连锁_彭世修脚技术培训_彭世足疗 | 下水道疏通_管道疏通_马桶疏通_附近疏通电话- 立刻通 | 便携式表面粗糙度仪-彩屏硬度计-分体式粗糙度仪-北京凯达科仪科技有限公司 | 美的商用净水器_美的直饮机_一级代理经销商_Midea租赁价格-厂家反渗透滤芯-直饮水批发品牌售后 | 汽车整车综合环境舱_军标砂尘_盐雾试验室试验箱-无锡苏南试验设备有限公司 | 执业药师报名条件,考试时间,考试真题,报名入口—首页 | 济南玻璃安装_济南玻璃门_济南感应门_济南玻璃隔断_济南玻璃门维修_济南镜片安装_济南肯德基门_济南高隔间-济南凯轩鹏宇玻璃有限公司 | 蒜肠网-动漫,二次元,COSPLAY,漫展以及收藏型模型,手办,玩具的新媒体.(原变形金刚变迷TF圈) | 阜阳在线-阜阳综合门户 | 质检报告_CE认证_FCC认证_SRRC认证_PSE认证_第三方检测机构-深圳市环测威检测技术有限公司 | led全彩屏-室内|学校|展厅|p3|户外|会议室|圆柱|p2.5LED显示屏-LED显示屏价格-LED互动地砖屏_蕙宇屏科技 | 不锈钢散热器,冷却翅片管散热器厂家-无锡市烨晟化工装备科技有限公司 | 药品/药物稳定性试验考察箱-埃里森仪器设备(上海)有限公司 | 科箭WMS仓库管理软件-TMS物流管理系统-科箭SaaS云服务 | 工业rfid读写器_RFID工业读写器_工业rfid设备厂商-ANDEAWELL | 医养体检包_公卫随访箱_慢病随访包_家签随访包_随访一体机-济南易享医疗科技有限公司 | GAST/BRIWATEC/CINCINNATI/KARL-KLEIN/ZIEHL-ABEGG风机|亚喜科技 | 全屋整木定制-橱柜,家具定制-四川峨眉山龙马木业有限公司 | 仓储笼_仓储货架_南京货架_仓储货架厂家_南京货架价格低-南京一品仓储设备制造公司 | 顺景erp系统_erp软件_erp软件系统_企业erp管理系统-广东顺景软件科技有限公司 | 工业用品一站式采购平台|南创工品汇-官网|广州南创 | 智能汉显全自动量热仪_微机全自动胶质层指数测定仪-鹤壁市科达仪器仪表有限公司 | 购买舔盐、舔砖、矿物质盐压块机,鱼饵、鱼饲料压块机--请到杜甫机械 | 雪花制冰机(实验室雪花制冰机)百科 | 上海小程序开发-小程序制作-上海小程序定制开发公司-微信商城小程序-上海咏熠 | 西安文都考研官网_西安考研辅导班_考研培训机构_西安在职考研培训 | 定量包装机,颗粒定量包装机,粉剂定量包装机,背封颗粒包装机,定量灌装机-上海铸衡电子科技有限公司 | 讲师宝经纪-专业培训机构师资供应商_培训机构找讲师、培训师、讲师经纪就上讲师宝经纪 | 呼末二氧化碳|ETCO2模块采样管_气体干燥管_气体过滤器-湖南纳雄医疗器械有限公司 | 金联宇电缆|广东金联宇电缆厂家_广东金联宇电缆实业有限公司 | 叉车电池-叉车电瓶-叉车蓄电池-铅酸蓄电池-电动叉车蓄电池生产厂家 | 气动调节阀,电动调节阀,自力式压力调节阀,切断阀「厂家」-浙江利沃夫自控阀门 | 电缆接头_防水接头_电缆防水接头 - 乐清市新豪电气有限公司 | 上海深蓝_缠绕机_缠膜机-上海深蓝机械装备有限公司 | 口臭的治疗方法,口臭怎么办,怎么除口臭,口臭的原因-口臭治疗网 | 质检报告_CE认证_FCC认证_SRRC认证_PSE认证_第三方检测机构-深圳市环测威检测技术有限公司 | 手板-手板模型-手板厂-手板加工-生产厂家,[东莞创域模型] |