python面試實戰經驗分享

2025/3/28第一面 杭州實在智能 見習python開發工程師

1、Python方法中參數默認值可以是列表或者字典嗎?
在Python中,函數參數的默認值可以是列表或字典,列表或者字典在初始化應在函數體內,如果不正確處理,可能會導致所有調用都共享同一個列表。
2、協程、線性和進程
進程是系統資源分配的最小單位,線程是 CPU 調度的最小單位。
協程是屬于線程的。協程程序是在線程里面跑的,因此協程又稱微線程和纖程等。協程的調度切換是用戶(程序員)手動切換的,因此更加靈活,因此又叫用戶空間線程。協程原子操作性。由于協程是用戶調度的,所以不會出現執行一半的代碼片段被強制中斷了,因此無需原子操作鎖。
3、說說你對redis的了解
4、Python中如何處理并發
1.多線程(Threading)2. 多進程(Multiprocessing)3. 異步編程(Asyncio)4. 使用并發隊列(Concurrency with Queues)
5、有沒有了解過flask框架
6、jwt每個部分是干什么的,jwt與普通token的區別
一個JWT是由三個部分來組成的,頭部(header),載荷(payload),簽名(signature)
頭部數據包含加密類型,使用的加密算法。
載荷是 JSON Web Token 的主體內容部分,包含jwt過期時間、jwt的簽發者,接收jwt的一方。
簽名需要使用編碼后的 header 和 payload 以及我們提供的一個密鑰
區別:Token需要在服務器端查詢數據庫。服務器會對比存儲在數據庫中的Token信息,如果匹配成功,則驗證通過。
JWT不需要查詢數據庫,直接在服務端進行校驗。JWT包含了用戶信息和簽名,服務器只需使用保存的密鑰驗證JWT的正確性即可??。

2025/3/28第二面 深圳智譜華章 大模型研發

1、存123,元組、字典、哈希、列表哪個占用內存少,原理是什么,集合為什么比列表大
元組不可變,創建時分配固定內存,無需預留空間,列表可變,支持動態擴容,通常會預分配額外空間(即使元素數量固定),集合基于哈希表實現,需維護空槽位以減少哈希沖突。字典同樣基于哈希表,但每個條目需存儲鍵、值和哈希,結構更復雜。從小到大依次為:元組 < 列表 < 集合 < 字典。
2、裝飾器原理
3、元組可不可以改變。不可變
4、大模型的關鍵詞

2025/4/1 第三面 上海巖山科技,python開發

1、為什么用Withopen()
?使用with open()打開文件的主要原因包括自動關閉文件、簡潔的代碼和異常安全?。
?自動關閉文件?:使用with open()時,文件在退出with語句塊時自動關閉,避免了因忘記調用file.close()而造成的文件句柄泄漏問題。
?簡潔的代碼?:with open()語法比傳統的open()和close()更簡潔,減少了代碼量,且更易于維護?
?異常安全?:如果在文件操作過程中發生異常,with open()語句會確保文件在異常拋出后依然被正確關閉?
with open(‘example.txt’, ‘r’) as file:
content = file.read()
print(content)
這里,'r’表示以只讀模式打開文件。
with open(‘example.txt’, ‘w’) as file:
file.write(‘Hello, world!’)
2、Redis為什么性能好
(1)、Redis 的高性能首先得益于其基于內存的存儲設計。傳統的數據庫通常將數據存儲在硬盤中,這會帶來大量的磁盤 I/O 操作,而硬盤訪問速度遠遠低于內存訪問速度。Redis 通過將數據存儲在 RAM(內存) 中,避免了磁盤 I/O,從而大大提高了訪問速度。
(2)、單線程處理:Redis 的所有操作在單線程中完成,避免了多線程的鎖機制問題,降低了上下文切換的開銷。多線程編程常常需要引入鎖機制來防止數據競爭,而 Redis 通過單線程架構消除了這一復雜性,減少了系統的負擔。
(3)、高效的數據結構設計
Redis 的數據結構設計是高度優化的,這也是其性能提升的核心之一。Redis 支持多種高效的數據結構,包括字符串(String)、列表(List)、集合(Set)、有序集合(Sorted Set)、哈希(Hash)等。
(4)、數據淘汰策略
LRU(Least Recently Used,最近最少使用)
LFU(Least Frequently Used,最少頻繁使用)
隨機淘汰
3、Python的性能為什么比java慢
1、Python是一種解釋性語言,代碼在執行時會逐行解釋并執行,這種動態類型和解釋執行的特性導致其運行速度比靜態編譯的語言如Java慢
2、Python的內存管理是基于引用計數的,這種機制在處理大量數據時可能會導致內存碎片化,從而影響性能
3、Java在處理并發操作時通常比Python更有效率。Java的JVM(Java虛擬機)提供了高效的線程管理和同步機制,而Python的GIL(全局解釋器鎖)限制了多線程的并行執行,影響了多線程性能???
4、Mysql的四個特性
原子性,一致性,持久性,隔離性
事務的隔離等級:讀未提交,讀已提交,可重復度,串行化
數據庫并發下事務的三種現象:臟讀(讀取了未提交事務的數據),不可重復讀(不可重復讀指的是在事務A中先后多次讀取同一個數據,讀取的結果不一樣,因為另外一個事務也訪問該同一數據,并且可能修改這個數據,這種現象稱為不可重復讀。),幻讀(在事務A中按照某個條件先后兩次查詢數據庫,兩次查詢結果的條數不同,這種現象稱為幻讀。不可重復讀與幻讀的區別可以通俗的理解為:前者是數據變了,后者是數據的行數變了。)
5、Transformer中FFN的作用
?Transforme

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/82943.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/82943.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/82943.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MIST:一鍵解鎖 macOS 歷史版本,舊系統安裝不再難!

在 Mac 電腦的使用過程中&#xff0c;你是否遇到過這些困擾&#xff1f;為了運行一款經典設計軟件&#xff0c;新系統卻無法兼容&#xff1b;或是想給老舊 Mac 設備升級&#xff0c;卻找不到適配的系統版本。而 App Store 里&#xff0c;舊版 macOS 安裝包就像 “隱藏副本”&am…

win10 局域網內聊天

在 Windows 10 的局域網 中&#xff0c;如果你想實現 多個用戶之間的聊天功能&#xff0c;可以選擇以下幾種方案&#xff0c;取決于你需要的是&#xff1a; ? ? 命令行純文字聊天&#xff08;如 Linux talk&#xff09; ? ? 圖形界面聊天室 ? ? 局域網廣播消息 ? ? 多人…

Android CountDownTimer重寫

Android 倒計時器重寫&#xff0c;實現可重復使用&#xff0c;動態修改計時時間 CountDownTimerRew 是一個可重寫、動態修改計時時間的 Android 倒計時器類。它允許開發者設置倒計時總時長、間隔時間&#xff0c;并通過 onTick 和 onFinish 方法實現定時回調。該類支持動態修改…

dp自動化登陸之hCaptcha 驗證碼

hCaptcha 是一種常見的驗證碼服務&#xff0c;用于區分人類用戶和自動化程序。由于其基于圖像識別和行為分析&#xff0c;下面介紹如何使用自動化點擊驗證碼完成登陸。 思路&#xff1a;登陸目標網站觸發驗證碼&#xff0c;截圖并發給打碼平臺返回坐標&#xff0c;模擬人工點擊…

【工作記錄】crmeb后端項目打開、運行

1、下載代碼 1&#xff09;安裝git 不再詳述 2&#xff09;git拉代碼 項目地址如下&#xff0c;在vscode-分支中拉代碼 # 克隆項目 git clone https://gitee.com/ZhongBangKeJi/crmeb_java/ 截圖如下是已經成功拉下來 注意安裝對應版本 2、maven配置 安裝配置見&#x…

敏捷軟件開發與Scrum

目錄 一、敏捷軟件開發 敏捷開發原則 敏捷開發特點 二、Scrum (一)Scrum 基礎知識

Three.js模型材質調整與性能優化實戰

一、材質基礎調整 1.1 顏色與透明度控制 通過Material.color屬性可直接修改材質顏色&#xff1a; material.color new THREE.Color(0xff0000); // 紅色結合opacity屬性實現透明效果&#xff1a; material.opacity 0.5; // 50%透明度如需動態調整&#xff0c;可通過Color.…

Flutter速成指南:不懂編程也能10天開發專業級App

Flutter速成指南&#xff1a;不懂編程也能10天開發專業級App &#x1f680; 輕松構建漂亮的跨平臺應用 &#x1f4d1; 目錄 一、Flutter是什么&#xff1f; 為什么選擇Flutter&#xff1f;Flutter工作原理 二、環境搭建與命令行 安裝Flutter SDK常用Flutter命令創建第一個項目…

【面試真題】王者榮耀億級排行榜,如何設計?

目錄 一、數據庫 order by 二、Redis 的zset 三、抗億級數據存在的問題 3.1 熱點 key 問題 3.1.1 多級緩存&#xff08;RedisJVM本地緩存&#xff09; 3.1.2 讀寫分離 從庫負載均衡 3.1.3 分片Key設計 3.2 內存爆炸 3.2.1 縮短鍵名 3.2.2 分片存儲 3.3 數據持久化風…

Java 語法基礎(筆記)

java 的數據類型 基本類型 Java 有八種基本類型&#xff1a; byte&#xff1a;1 字節&#xff0c;-128~127short&#xff1a;2 字節&#xff0c;-32768~32767int&#xff1a;4 字節&#xff0c;-2147483648~2147483647long&#xff1a;8 字節&#xff0c;-92233720368547758…

C# 方法(棧幀)

本章內容: 方法的結構 方法體內部的代碼執行 局部變量 局部常量 控制流 方法調用 返回值 返回語句和void方法 局部函數 參數 值參數 引用參數 引用類型作為值參數和引用參數 輸出參數 參數數組 參數類型總結 方法重載 命名參數 可選參數 棧幀 遞歸 棧幀 至此&#xff0c;我們已…

C# 使用 WinUI 3 項目模板創建桌面應用程序

文章目錄 1. 概述2. 先決條件3. 創建項目步驟4. 項目結構簡介5. 代碼示例5.1. MainWindow.xaml (UI 定義)5.2. MainWindow.xaml.cs (邏輯代碼) 6. 生成和運行應用程序7. 關鍵概念 1. 概述 本示例演示如何使用 Visual Studio 中的 “Blank App, Packaged (WinUI 3 in Desktop)”…

設計模式簡述(十八)享元模式

享元模式 描述基本組件使用 描述 當內存中存在大量類似的對象時&#xff0c;可以考慮使用享元模式減少整體內存占用。 可以將相同的部分和不同的部分進行拆分&#xff0c;以達到多個對象共享相同部分內存的目的。 基本組件 通常享元對象通過共享的屬性映射一個享元對象。 公…

大數據狙擊金融欺詐——技術如何守護交易安全?

大數據狙擊金融欺詐——技術如何守護交易安全? 金融領域一直是欺詐行為的“重災區”,從傳統的信用卡盜刷到精心策劃的網絡詐騙,攻擊者不斷進化手法,使得防御變得越來越復雜。然而,大數據技術的出現,讓金融欺詐檢測從被動防守轉向主動狙擊,通過深度學習、行為分析和實時…

如何通過DNS解析實現負載均衡?

在當今的互聯網時代&#xff0c;隨著網絡應用的飛速發展&#xff0c;網站和各類在線服務面臨著海量的用戶請求。為了保障服務的高可用性和高性能&#xff0c;負載均衡技術應運而生。DNS&#xff08;域名系統&#xff09;負載均衡作為其中一種重要的實現方式&#xff0c;憑借其簡…

MySQL解決主從復制的報錯問題

MySQL 8.4 非 GTID 模式部分數據庫主從復制指南 在進行MySQL 8.4非GTID模式下部分數據庫主從復制時&#xff0c;以下是詳細的操作步驟以及對應的執行位置說明&#xff0c;還有報錯處理方法介紹&#xff1a; 操作步驟 1. 備份主庫指定數據庫&#xff08;db1、db2&#xff09;…

Linux的域名解析服務器

什么是DNS DNS&#xff08;Domain Name System&#xff09;是互聯網上的一項服務&#xff0c;它作為將域名和IP地址相互映射的一個分 布式數據庫&#xff0c;能夠使人更方便的訪問互聯網 DNS使用的是53端口&#xff0c; 通常DNS是以UDP這個較快速的數據傳輸協議來查詢的&…

vue 中綁定樣式 【class樣式綁定】

class 樣式綁定 在 Vue 中&#xff0c;可以通過 :class&#xff08;或簡寫 v-bind:class&#xff09;實現類名&#xff08;class&#xff09;樣式的綁定。Vue 提供了幾種常用的綁定方式&#xff0c;分別支持字符串、對象和數組語法。 綁定字符串 <div :class"active…

Unity3D 序列化機制:引擎內的應用場景和基本原理

前言 Unity3D 的序列化機制是其核心功能之一&#xff0c;用于在編輯器和運行時之間持久化數據、管理場景狀態、處理預制體&#xff08;Prefab&#xff09;以及實現跨平臺兼容性。以下是其應用場景和基本原理的詳細解析&#xff1a; 對惹&#xff0c;這里有一個游戲開發交流小…

Python 字典鍵 “三變一” 之謎

開頭&#xff1a;讀者的“玄學”字典謎題 上周&#xff0c;朋友發來了一段讓他抓耳撓腮的代碼&#xff1a; >>> {True: foo, 1: bar, 1.0: baz} {True: baz} “我明明定義了布爾True、整數1、浮點數1.0三個鍵&#xff0c;結果字典里只剩True一個鍵&#xff0c;值…