中都得到了廣泛的應(yīng)用。 本文將談?wù)?Python 中的迭代器模式,主要內(nèi)容:什么是迭代器模式、Python 如何實現(xiàn)迭代器模式、itertools
2020-11-23 13:10:54
1066 
在前兩篇關(guān)于 Python 切片的文章中,我們學(xué)習(xí)了切片的基礎(chǔ)用法、高級用法、使用誤區(qū),以及自定義對象如何實現(xiàn)切片用法(相關(guān)鏈接見文末)。本文是切片系列的第三篇,主要內(nèi)容是迭代器切片。 迭代器
2020-11-29 10:11:00
927 運行文件hello_world.py時,末尾的.py指出這是一個Python程序,因此編輯器將使用Python解釋器 來運行它。Python解釋器讀取整個程序,確定其中每個單詞的含義。例如,看到單詞print 時,解釋器就會將括號中的內(nèi)容打印到屏幕,而不會管括號中的內(nèi)容是什么。
2023-09-20 16:16:34
2241 Python中實例屬性和實例方法Python中類屬性和類方法Python中調(diào)用類方法
2020-11-05 06:25:06
;> b1 b'china' 3)dict的.keys()、.items 和.values()方法返回迭代器,而之前的iterkeys()等函數(shù)都被廢棄。同時去掉的還有 dict.has_key
2018-01-26 16:39:01
的電氣工程師能夠利用Python編寫有用的測試腳本或以最少的時間投入執(zhí)行電路板檢查。Python的學(xué)習(xí)曲線并不陡峭,熟悉它的開發(fā)人員發(fā)現(xiàn)它是一種易于從其他語言切換的語言。語言本身靈活,并且可以適應(yīng)在基于微控制器的環(huán)境中工作。
2019-01-11 18:22:17
供足夠的上下文來進一步研究它。我們的目標并不是解釋所有關(guān)于解釋器的知識——就像編程和計算機科學(xué)中許多有趣的領(lǐng)域一樣,您可以花費數(shù)年時間來深入理解這個主題。Byterun它的結(jié)構(gòu)類似于Python的主要實...
2021-09-16 06:42:09
python迭代器1. 可迭代對象可以利用 for 循環(huán)的對象,都叫可迭代對象。列表、元組、字典、字符串等都是可迭代對象。# 以列表為例>>> alist = [0, 1, 2
2022-02-24 15:42:43
:Python基礎(chǔ)語法、數(shù)據(jù)類型、字符編碼、文件操作、函數(shù)、裝飾器、迭代器、內(nèi)置方法、常用模塊等。階段二:Python高級編程和數(shù)據(jù)庫開發(fā)Python全棧開發(fā)與人工智能之Python高級編程和數(shù)據(jù)庫開發(fā)
2018-03-06 16:08:27
淺談FPGA在安全產(chǎn)品中有哪些應(yīng)用?
2021-05-08 06:36:39
淺談UWB與WMAN無線電系統(tǒng)的驗證
2021-06-02 06:07:49
淺談三層架構(gòu)原理
2022-01-16 09:14:46
淺談低成本智能手機的發(fā)展
2021-06-01 06:34:33
淺談電子三防漆對PCB板的作用有哪些?
2023-04-14 14:36:27
`淺談鹽霧試驗在電能表中的應(yīng)用`
2016-04-06 15:06:20
連接器(W to B)、線對線連接器(W to W)。我們今天就來談一談線對板連接器中的貼片連接器。淺談線對板連接器中的貼片連接器表面焊貼裝技術(shù)自50年代就開始被有些廠商使用。但貼片連接器的使用卻是近期才
2021-03-25 11:06:42
迭代不同WIFI連接的正確方法?
2023-05-04 06:46:12
新手小白提問,如圖,設(shè)置的是迭代求解,運行時轉(zhuǎn)為直接求解導(dǎo)致內(nèi)存不夠,請大神解答為什么不能用迭代求解啊
2024-03-27 14:24:35
的,意思是依次訪問集合中的每一個元素,迭代器提供訪問這些元素的方法。對于單鏈表而言,鏈表中的每一個節(jié)點都是一個元素,所有的節(jié)點組成集合。所以可以通過迭代器來訪問鏈表中的元素。迭代器需要提供的基本能力以及操作
2022-08-30 10:31:43
節(jié)點的地址。因為單鏈表只支持往一個方向查找,不支持往回查找,如上面的錯誤范例。如果root記錄的是第二個節(jié)點地址,則第一個節(jié)點變得不可訪問。迭代器簡介迭代器是伴隨集合概念產(chǎn)生的,意思是依次訪問集合中
2022-09-05 11:38:47
js 迭代器 異步 介紹 (Introduction)It’s been a long while coming and I feel it’s high time I made a post
2021-09-06 09:26:13
非線性方程(或方程組)問題可以描述為求 x 使得f(x) = 0。在求解非線性方程的方法中,牛頓迭代法是求非線性方程(非線性方程組)數(shù)值解的一種重要的方法。牛頓是微積分創(chuàng)立者之一,微積分
2012-03-08 16:22:24
什么是Python中的流程控制?
2021-10-09 07:24:01
什么是數(shù)碼功放?淺談數(shù)碼功放
2021-06-07 06:06:15
選擇最佳策略:簡單的方式 6.1.4 找出模塊中的全部策略 6.2 “命令”模式 6.3 本章小結(jié) 6.4 延伸閱讀 第 7 章 函數(shù)裝飾器和閉包 7.1 裝飾器基礎(chǔ)知識 7.2 Python何時執(zhí)行
2021-09-23 20:39:20
Python的解釋器中,使用廣泛的是CPython,對于Python的編譯,除了可以采用以上解釋器進行編譯外,技術(shù)高超的開發(fā)者還可以按照自己的需求自行編寫Python解釋器來執(zhí)行Python代碼,十分的方便!
2018-04-13 14:54:50
[tr]在本簡短的教程中,我們將介紹如何使用Python查找sum()[tr]一份名單。我們研究了各種方法來做到這一點,以及它們的局限性。[tr]本教程是我們在[tr]柔性[tr],就經(jīng)常使用的或有
2021-09-01 23:14:21
我想在python 3中安裝pyntcloudwindows10英特爾?實感以上來自于谷歌翻譯以下為原文i want to install pyntcloud in python 3windows10Intel? RealSense
2018-11-28 14:53:32
=[1,2,3,4] >>> it = iter(lis) # 使用Python內(nèi)置的iter()方法創(chuàng)建迭代器對象 >>> next(it) # 使用next()方法
2018-07-19 16:22:53
怎么導(dǎo)出python邊緣計算中的APP,想進行修改又找不到源碼
2024-07-25 06:13:11
的某個函數(shù)或?qū)ο骙,應(yīng)直接使用from X import Y,而不是import X; X.Y。這樣在使用Y時,可以減少一次查詢(解釋器不必首先查找到X模塊,然后在X模塊的字典中查找Y)。3、采用映射
2018-07-10 16:22:55
什么是集合框架?LIST接口的實際應(yīng)用?迭代器的實現(xiàn)原理是什么?
2020-11-04 09:45:54
淺談控制系統(tǒng)中PLC的合理選擇
合理選擇PLC,對于提高PLC在控制系統(tǒng)中的應(yīng)用有著重要作用。本文就PLC的機型、I/O、存儲器類型及容量和
2009-06-19 12:55:42
873 
如何在 IIS 中執(zhí)行 Python 腳本
Python 是一種解釋腳本語言,概念類似 Microsoft Visual Basic Scripting Edition (VBScript)、 MicrosoftJScript、 Perl, 或其
2010-02-23 15:13:46
1496 淺談高頻設(shè)計中的電磁兼容問題,下來看看。
2016-07-29 19:05:18
19 淺談ARM處理器基礎(chǔ)知識
2017-01-14 12:31:29
16 在了解Python的數(shù)據(jù)結(jié)構(gòu)時,容器(container)、可迭代對象(iterable)、迭代器(iterator)、生成器(generator)、列表/集合/字典推導(dǎo)式(list,set
2017-11-15 17:34:01
1326 
python是目前市面上,我個人認為是最簡潔&&最優(yōu)雅&&最有錢途&&最全能的編程語言,沒有之一。所以既然你決定了要學(xué)習(xí)python,那么就需要先下一個決心,至少決定要做為自己的主力語言。
2018-10-09 09:45:32
1896 Python 有 Python 2 和 Python 3 兩個版本。 語法有些區(qū)別。 保險起見, 我安裝Python配置pydev解釋器安裝好pydev后, 需要配置Python解釋器。
2018-10-25 16:55:19
34 特點決定的?! ∈紫?,Python是一門解釋型語言意味著Python是比較容易入門的。Python的語法更接近英語的語法,通過解釋器執(zhí)行basic程序可以讓計算機讀懂指令。當然,這樣對開發(fā)者而言
2018-12-03 11:01:20
603 事實上,迭代器是一個伴隨著迭代器模式(Iterator Pattern)而生的抽象概念,其目的是分離并統(tǒng)一不同的數(shù)據(jù)結(jié)構(gòu)訪問其中數(shù)據(jù)的方式,從而使得各種需要訪問數(shù)據(jù)結(jié)構(gòu)的函數(shù),對于不同的數(shù)據(jù)結(jié)構(gòu)可以保持相同的接口。
2019-07-21 07:45:00
14817 許多python初學(xué)者,在接觸到python面向?qū)ο蟮臅r候,就被類中包含的方法中的self打敗了,不知道self是何物?
2020-01-19 17:51:00
2146 
Python中的裝飾器用于擴展可調(diào)用對象的功能,而無需修改其結(jié)構(gòu)?;旧?,裝飾器函數(shù)包裝另一個函數(shù)以增強或修改其行為。我們可以通過一個具體的例子了解基礎(chǔ)知識!讓我們編寫一個包含裝飾器實現(xiàn)示例的Python3代碼。
2020-07-01 11:35:38
2652 淺談智能電網(wǎng)在智慧城市中的應(yīng)用
2020-07-16 11:39:17
1965 迭代器是 23 種設(shè)計模式中最常用的一種(之一),在 Python 中隨處可見它的身影,我們經(jīng)常用到它,但是卻不一定意識到它的存在。在關(guān)于迭代器的系列文章中(鏈接見文末),我至少提到了 23 種生成
2020-11-23 13:50:29
993 
先重溫一下迭代(Iteration)、迭代器對象(iterable)、迭代器(iterator )的概念:
2020-12-10 19:44:24
560 作為時下最時尚的python語言,簡潔的代碼,借助于向軍火庫一般的各種開源工具包,你可以完成你想做的任何事。
2021-04-12 16:36:18
2549 在Anaconda中安裝python包seaborn(現(xiàn)代電源技術(shù)題庫)-在Anaconda中安裝python包seaborn? ? ? ? ? ? ?
2021-09-18 15:01:41
5 淺談鋼鐵行業(yè)中PLC網(wǎng)關(guān)的應(yīng)用
2021-11-05 09:13:15
857 
淺談電力控制系統(tǒng)中PLC網(wǎng)關(guān)的應(yīng)用
2021-11-06 10:24:03
1002 
1.1【環(huán)境】快速安裝 Python 解釋器 Python 是一門解釋性腳本語言,因此要想讓你編寫的代碼得以運行,需要先安裝 CPython 解釋器。 根據(jù)你電腦的系統(tǒng)以及位數(shù)不同,安裝步驟也有
2022-02-15 16:57:54
2878 
python迭代器 1. 可迭代對象 可以利用 for 循環(huán)的對象,都叫可迭代對象。 列表、元組、字典、字符串等都是可迭代對象。 # 以列表為例 alist = [0, 1, 2, 3, 4, 5
2022-02-24 15:42:33
1778 python生成器 1. 什么是生成器? 生成器(英文名 Generator ),是一個可以像迭代器那樣使用for循環(huán)來獲取元素的函數(shù)。 生成器的出現(xiàn)(Python 2.2 +),實現(xiàn)了延時
2022-02-24 15:53:12
4295 Python程序有兩種運行方式:交互式和文件式。
交互式利用Python解釋器即時響應(yīng)用戶輸入的代碼,給出輸出結(jié)果。
文件式將Python程序?qū)懺谝粋€或多個文件中,啟動Python解釋器批量執(zhí)行文件中的代碼。
2022-07-11 09:43:39
1 今天來和大家聊聊抽樣的幾種常用方法,以及在Python中是如何實現(xiàn)的。
2022-08-05 10:59:05
1806 當您運行 Python 代碼時,解釋器將首先解析它以將其轉(zhuǎn)換為 Python 字節(jié)碼,然后執(zhí)行。
2022-08-05 11:03:06
1471 python中怎么使用HTTP代理,華益云高匿爬蟲代理ip
2022-09-01 14:36:39
2134 剛學(xué)Python,你肯定遇到過這個問題剛學(xué)Python時,拿到一個Python項目,想用pycharm打開運行,pycharm界面卻顯示No Python Interpreter configured for the project,翻譯一下是:沒有為項目配置Python解釋器。
2022-10-14 15:48:20
16072 
? 半年前,知名 Python 發(fā)行版 Anaconda 開發(fā)商推出了? PyScript ?—— 一款支持在瀏覽器中創(chuàng)建 Python 應(yīng)用程序的框架。PyScript 基于 ? Pyodide
2022-11-17 15:42:54
1272 這個故事的靈感來自于一個類似的故事,在 ChatGPT 中構(gòu)建虛擬機。我印象深刻并決定嘗試類似的東西,但這次不是 Linux 命令行工具,而是讓 ChatGPT 成為我們的 Python 解釋器
2023-02-13 10:08:00
0 Python支持遞歸函數(shù)——即直接或間接地調(diào)用自身以進行循環(huán)的函數(shù)。遞歸是頗為高級的話題,并且它在Python中相對少見。然而,它是一項應(yīng)該了解的有用的技術(shù),因為它允許程序遍歷擁有任意的、不可預(yù)知的形狀的結(jié)構(gòu)。遞歸甚至是簡單循環(huán)和迭代的替換,盡管它不一定是最簡單的或最高效的一種。
2023-02-21 14:28:25
1099 python迭代工具自動調(diào)用迭代對象next方法,對迭代對象進行遍歷。
python的for循環(huán)、列表解析、map方法、生成器表達式、生成器方法都是迭代工具。
python可迭代對象包括:字符串、列表、元組、字典、集合、range、enumerate、文件等。
2023-02-21 14:56:34
1090 python迭代工具自動調(diào)用迭代對象next方法,對迭代對象進行遍歷。
python的for循環(huán)、列表解析、map方法、生成器表達式、生成器方法都是迭代工具。
python可迭代對象包括:字符串、列表、元組、字典、集合、range、enumerate、文件等。
2023-02-21 14:56:37
973 Tqdm 是一個智能進度表。它能夠顯示所有可迭代對象當前執(zhí)行的進度。
2023-02-24 11:12:51
1630 
對于int型數(shù)組除了用下標訪問,還可以通過指針訪問,實際上迭代器就是對指針進行了封裝。
2023-02-27 15:55:00
2902 
之前的兩篇文章我們主要了解了vector和string的相關(guān)知識,從中我們知道可以通過下標來訪問vector的元素或者string的字符,但是除了這種方式還有一種更為通用的方式獲取元素,那就是迭代器,這篇文章就會簡單介紹迭代器的相關(guān)內(nèi)容。
2023-03-17 14:03:51
1074 安裝Python解釋器是搭建Python編程環(huán)境的第一步。Python解釋器是Python編程語言的核心組件,負責(zé)解析和執(zhí)行Python代碼。在本文中,我們將介紹如何安裝Python解釋器,以便您能夠開始學(xué)習(xí)和使用Python編程語言。
2023-04-14 12:08:40
6070 在 Python 中,for 循環(huán)是一種常用的結(jié)構(gòu),用于遍歷序列(如列表、元組、字符串)中的元素。
2023-04-19 15:45:51
3150 Python 是一種高級編程語言,具有簡潔的語法和易于學(xué)習(xí)的特點。它是一種解釋型語言,可以輕松地在不同平臺上運行。Python 中的數(shù)組是一種數(shù)據(jù)結(jié)構(gòu),可以用于存儲相同類型的多個元素。
2023-04-20 16:52:18
1981 迭代器是 Python 中非常重要的概念之一,它是一種對象,可以在代碼中按順序訪問一組值。
2023-04-20 16:58:19
1298 在Python中,處理日期時間是一個很常見的需求。Python提供了強大的日期時間模塊datetime,可以方便地處理日期時間相關(guān)的操作。
2023-04-21 16:50:06
2084 telnetlib 是 Python 標準庫中的一個模塊,它提供了 Telnet 協(xié)議的客戶端功能。使用 telnetlib 模塊,我們可以在 Python 中編寫腳本來自動化 Telnet 會話,執(zhí)行命令以及收集輸出。
2023-05-04 14:27:56
9217 Python 是一種高級編程語言,被廣泛應(yīng)用于數(shù)據(jù)科學(xué)、機器學(xué)習(xí)、Web 開發(fā)等領(lǐng)域。在 Linux 操作系統(tǒng)中,Python 是一個默認安裝的解釋器,用戶可以通過命令行界面(CLI)來運行
2023-05-12 14:49:10
2611 我們使用Pycharm來編寫Python程序時會指定工程編碼和文件編碼為UTF-8,那么Python代碼被保存到磁盤時就會被轉(zhuǎn)換為UTF-8編碼對應(yīng)的字節(jié)(encode過程)后寫入磁盤。當執(zhí)行Python代碼文件中的代碼時,Python解釋器在讀取Python代碼文件中的字節(jié)串之后,需要將其轉(zhuǎn)換為
2023-07-05 16:11:02
1805 
其實Python3中對字符串支持的改進,不僅僅是更改了默認編碼,而是重新進行了字符串的實現(xiàn),而且它已經(jīng)實現(xiàn)了對UNICODE的內(nèi)置支持,從這方面來講Python已經(jīng)和JAVA一樣優(yōu)秀。下面我們來看
2023-07-05 16:15:42
1300 Iterator Design Pattern: 對容器 (聚合類,集合數(shù)據(jù)等) 的遍歷操作從容器中拆分出來,放到迭代器中,實現(xiàn)迭代操作的解耦。
2023-08-08 09:41:46
1104 
行為型設(shè)計模式數(shù)量較多,上一篇介紹了模板模式和策略模式,下面對迭代模式進行介紹,挖掘其在UVM中的應(yīng)用。
2023-08-14 17:15:20
1116 
函數(shù)迭代是數(shù)學(xué)中一個非常重要和有趣的主題,它在不同的領(lǐng)域有著不同的應(yīng)用和著眼點。在動力系統(tǒng)中,函數(shù)迭代可以揭示復(fù)雜系統(tǒng)的演化規(guī)律和混沌現(xiàn)象;
2023-08-30 10:11:46
2491 
本文主要介紹Python相關(guān)的環(huán)境搭建、Anaconda的使用以及在LabVIEW中調(diào)用Python的方法。
2023-10-13 17:56:09
6177 
Tqdm 是一個智能進度表。它能夠顯示所有可迭代對象當前執(zhí)行的進度。 你只需要用 tqdm 對可迭代對象進行封裝后再遍歷即可實現(xiàn)進度條功能,比如說: from tqdm import tqdm
2023-10-21 10:16:12
1725 中,for 循環(huán)服從于對象模型。 也就是說,在 Python 中,如果你想自定義迭代的過程,可以讓對象告訴解釋器該如何作迭代: class Stuff :
2023-10-30 11:50:19
1082 之迭代器模式 》中簡單地介紹過它,前幾天翻譯了 Python 3.10 采納的 PEP-618 ,介紹了它將會迎來的變更。 但是,還有不少同學(xué)并不知道 zip(),或者不能熟練掌握它的用法,因此本文打算來做一個更為詳細的梳理。 內(nèi)容主要分三部分: 用法部分:介紹它的基礎(chǔ)用法、
2023-10-30 14:21:32
4027 
利用Python自帶的win32api和win32con、win32gui等模塊,我們能執(zhí)行許多windows下的自動化操作。比如兩個窗口的自動點擊操作,從軟件中的窗口復(fù)制文本到txt中,甚至是截圖
2023-11-03 15:32:52
1730 
牛頓迭代法是一種數(shù)值計算方法,用于求解方程的數(shù)值近似解。它是以英國科學(xué)家艾薩克·牛頓的名字命名的,最初由牛頓在17世紀末提出。牛頓迭代法基于一個簡單的原理:一條曲線的切線近似代替這條曲線,在切線與x
2023-11-21 15:06:51
1815 Python中的元組(tuple)是一種不可變的有序集合。與列表(list)類似,元組可以存儲任意類型的數(shù)據(jù),但是元組一旦創(chuàng)建就不能被修改。在Python中,元組是使用圓括號進行表示,其中的元素可以
2023-11-21 16:27:46
1696 在Python中,number(數(shù)字)是一種內(nèi)置的數(shù)據(jù)類型,用于表示數(shù)值。Python提供了幾種不同的number類型,分別是整數(shù)(int)、浮點數(shù)(float)、復(fù)數(shù)(complex)和布爾值
2023-11-22 09:50:17
3179 循環(huán)是計算機編程中常用的一種控制結(jié)構(gòu),用于重復(fù)執(zhí)行一段代碼。Python提供了多種類型的循環(huán)結(jié)構(gòu),包括for循環(huán)和while循環(huán)。在這篇文章中,我們將詳細介紹Python循環(huán)中的輸出結(jié)果。 首先
2023-11-22 09:59:24
2729 在PyCharm中設(shè)置Python解釋器非常簡單,只需按照以下步驟操作: 打開PyCharm,并打開你的項目。 在菜單欄中選擇"File"(文件),然后選擇"Settings"(設(shè)置)。在
2023-11-22 11:08:05
7214 Python自帶的命令窗口,也稱為Python交互式解釋器,是Python編程語言的一個重要工具,它允許用戶在命令行界面中輸入和執(zhí)行Python代碼。不同于編寫腳本并保存為文件后再執(zhí)行,Python
2023-11-22 14:02:20
1690 淺談濾波器
2023-11-29 16:20:50
1808 
Python中如何使用循環(huán)創(chuàng)建變量并賦值,以及它的一些應(yīng)用場景。 首先,讓我們來了解一下Python中的循環(huán)。Python提供了兩種常用的循環(huán)結(jié)構(gòu):for循環(huán)和while循環(huán)。for循環(huán)適合用于已知循環(huán)次數(shù)的情況,它通過遍歷一個可迭代對象中的元素來實現(xiàn)
2023-11-23 14:51:59
2552 Python中的text是一個常見的數(shù)據(jù)類型,它用于存儲和處理文本數(shù)據(jù)。在Python中,文本常常被表示為字符串(string),字符串是一系列Unicode字符的有序序列。 在Python中,我們
2023-11-23 15:46:04
5694 Python2中,print語句是一個關(guān)鍵字,而在Python3中,print函數(shù)被引入,必須使用括號。此外,Python3要求字符串必須使用括號括起來,而Python2可以使用單引號或雙引號。 整除運算符
2023-11-23 16:48:37
2111 Python Shell是一種交互式解釋器,可以通過命令行直接運行Python代碼。在Shell中,可以輸入一行代碼并立即得到結(jié)果,非常適合于測試、嘗試新代碼或進行簡單的任務(wù)。本文將詳細介紹
2023-11-29 14:36:18
2161 。 方法一:使用Python自帶安裝程序的默認路徑 Python的安裝程序通常會將Python解釋器安裝在默認的路徑中
2023-11-29 14:54:21
13917 split在python中的用法 split()是Python中一個非常常用的字符串函數(shù),它能夠根據(jù)指定的分隔符將一個字符串分割成多個子字符串,并返回一個包含這些子字符串的列表。本文將詳細介紹
2023-12-25 15:12:50
3412 概念。 理解迭代器和可迭代對象: 在深入探討函數(shù)生成器之前,我們需要先了解迭代器和可迭代對象的概念。在Python中,迭代是一種訪問集合元素的方式,無論集合的大小如何。迭代器是一個可以記住遍歷位置的對象。可迭代對象是可以返回
2024-02-23 16:01:06
1113 Python在人工智能(AI)領(lǐng)域的應(yīng)用極為廣泛且深入,從基礎(chǔ)的數(shù)據(jù)處理、模型訓(xùn)練到高級的應(yīng)用部署,Python都扮演著至關(guān)重要的角色。以下將詳細探討Python在AI中的幾個關(guān)鍵應(yīng)用實例,包括機器學(xué)習(xí)、深度學(xué)習(xí)、自然語言處理、計算機視覺以及強化學(xué)習(xí),每個部分將結(jié)合具體案例進行闡述。
2024-07-19 17:16:19
3730 Python迭代器與生成器 列表生成式 列表生成式也叫做列表推導(dǎo)式,它本身還是列表,只不過它是根據(jù)我們定義的規(guī)則來生成一個真實的列表。 ? ? list2 = [x for x in range
2025-02-20 10:43:26
753
評論