-
Python為何如此火爆?是噱頭還是趨勢?
大家好,我是云珍! 最近正好是上半年的課程陸續結班,不少企業開始纏著我們要人。最近跟其中一位HR聊天,他說了一位應屆生的故事,讓我印象還挺深刻的。 是名計算機專業的研究生,面試時,講起 Python 的相關知識,非常熟悉有條理,大家對他的期望值特別高。但是,等他真正上手項目時,才發現,他的知識都停留在理論層面。 后來,我跟教務群里的老師們交流了一下,發現這種現象其實并不少見,很多人在談到某些知識時,可以出口成章,但是一遇到真實的商業環境,就會毫無頭緒,犯各種奇葩錯誤。而基本上,我調查的往期 Py…
-
9 個小技巧,加速 Python 的優化思路
Python 是一種腳本語言,相比 C/C++ 這樣的編譯語言,在效率和性能方面存在一些不足。但是,有很多時候,Python 的效率并沒有想象中的那么夸張。本文對一些 Python 代碼加速運行的技巧進行整理。 0. 代碼優化原則 本文會介紹不少的 Python 代碼加速運行的技巧。在深入代碼優化細節之前,需要了解一些代碼優化基本原則。 第一個基本原則是不要過早優化。很多人一開始寫代碼就奔著性能優化的目標,“讓正確的程序更快要比讓快速的程序正確容易得多”。因此,優化的前提是代碼能正常工作。過早地…
-
Python 庫 PyPI 遭受危機!
據 BleepingComputer 報道,Python 官方軟件包存儲庫 PyPI 遭受了黑客攻擊,攻擊者通過注入大量垃圾郵件包的形式發起了洪水攻擊,這些垃圾郵件及軟件包通過采用電影,電視節目名稱來命名,有些還包含了年份、在線、免費等字樣,例如:“watch-army-of-the-dead-2021-full-online-movie-free-hd-quality”,其格式通常與提供盜版下載的?“torrent ” 或 “warez” 網站相關。 圖源:BleepingComputer 這…
-
Python四大函數 變量,引用,匿名,遞歸
一. 局部和全局變量 1、局部變量 (1)含義:就是在函數內部定義的變量(作用域僅僅局限在函數的內部)不同的函數可以定義相同的局部變量,但是各自用各自的 不會產生影響 (2)作用:為了臨時的保存數據 需要在函數中定義來進行存儲 2、全局變量:可以被所有函數調用 3、突發情況 當全局變量和局部變量出現重復定義的時候,程序會優先執行使用函數內部定義的變量(地頭蛇) 如果在函數的內部要想對全局變量進行修改的話 必須使用global 關鍵字進行聲明 對于可變類型(dict、list)來講,全局變量要想在…
-
當心啊!僅僅50行Python,就可以在手機端看小姐姐的電腦桌面
以下文章來源于菜鳥學Python,作者菜鳥小哥 看上心意的小姐姐,想看她平時都瀏覽什么網頁,如何才能看她的桌面呢,都說Python很厲害,這次我們做一個利用移動端訪問電腦來查看電腦的界面的神器! 不知道大家以前有沒有做過這方面的東西呢?也許大家聽起來還有點不太理解,沒有關系,下面小編就帶領大家來看一下這個炫酷的操作,程序運行的結果如下圖所示。 上圖是程序執行的圖片,而下圖是在手機端訪問電腦時,所返回的電腦端的界面,為了更加直觀的進行展示。 原理解釋 下面,小編就來為大家闡述這個操作是如何完成的吧…
-
Python with提前退出:坑與解決方案
問題的起源 早些時候使用with實現了一版全局進程鎖,希望實現以下效果: 全局進程鎖本身不用多說,大部分都依靠外部的緩存來實現的,redis上用的是setnx,有時候根據需要加上緩存擊穿問題、隨機延后以防止對緩存本身造成壓力。 當時同樣寫了單元測試來測試這段代碼的有效性: 看起來非常完美地通過了。 這樣的一個全局進程鎖是通過__enter__方法拋出異常, __exit__方法中捕獲異常來實現的: 看起來還不錯,畢竟單元測試都過了。 但是,這樣的實現是有問題的: 原因在于__exit__ 的執行…
-
python文件打包實戰技巧
眾所周知,python是一種腳本語言,python程序必須在python環境下運行,所以如果想把自己寫的程序給別人看的話,就比較麻煩,他需要先配置python環境,對于電腦小白來說這是“要命”的事情。而且如果是客戶的話,也不想讓對方知道源代碼,那么怎樣才能既保留自己的源代碼同時又能讓對方很方便的使用自己的程序呢? PyInstaller的安裝可以在命令行輸入以下命令直接安裝: pip install PyInstaller 如果看到Successfully install PyInstaller…
-
高級Python工程師教你如何正確寫代碼
我接手的第一樣東西就是React UI。我們有一個主要組件,它容納了其他所有組件。我喜歡在代碼中加入一點幽默感,我想把它命名為GodComponent。在code review的時候,我才明白為什么命名是一件很難的事情。 計算機科學有兩個難點:緩存失效,給變量命名,以及差一錯誤。 我經手的每一段代碼都帶有隱喻意。GodComponent?那時用來盛放所有那些我不知道該放到哪里的的爛代碼的。它包羅萬象。如果我將一個變量命名為LayoutComponent,未來我會知道,它所做的只是規劃布局,而不涉…
-
幾行python代碼就能復制U盤文件
上大學的時候有老師不給上課的PPT,就總想有個程序能偷偷復制老師的U盤。。。。一直沒有去實現,最近看論文,就想起來這個事情了,發現其實用幾行python代碼就能搞定了。分兩步,首先寫出來python代碼,其次把.py文件轉換成exe文件,直接在windows電腦上后臺運行。 代碼 # -*- coding:utf-8 -*- import os import time from datetime import datetime import shutil # U盤的盤符 usb_path = "…
-
python中幾種集合用法小知識
哈嘍!同學們,今天小編和大家分享一下Python中幾種集合用法小知識! #remove 刪除元素 >>> s1 = {1,2,3,4,5} >>> s1.remove(2) >>> print(s1) {1, 3, 4, 5} #pop 剪切 >>> s1 = {1,2,3,4,5} >>> res = s1.pop() >>> print(res) 1 #add 添加 >>&…