重複調用python(重複調用函數自身實現循環的方法)

  • 1、Python如何把一段代碼封裝起來重複使用
  • 2、python 怎麼在一個函數中調用同一個函數兩次
  • 3、怎樣讓python多次調用函數.讓函數返回的值相加
  • 4、python一行代碼能否多次調用同一個列表
  • 5、python用open打開文件讀寫,“w”會替換,“a”多次調用函數會重複
  • 6、Python lock函數重複調用

你可以用類或者函數將其封裝一下,將需要後期變動的變量作為參數放在其中,可以使用默認值傳參。

舉個簡單函數和類的栗子:

# 函數封裝

def sum(a, b=3):

    return a + b

# 類封裝

class S(object):

    def __init__(self, a=2, b=3)

        self.a = a

        self.b = b

    def sum(self):

        return self.a + self.b

如果是同一包裡面,直接就可以使用,如果不是同一個包,那麼需要先import後,通過“包名.類名”才能使用。 下面是同一個包裡面的案例: def a(): print(1) def b(): a() print (2) b()

下面是一個例子,用 for 循環調用 10 次 test 函數,並把返回值加到 sum 變量中:

#coding=utf-8

def test(n):

    return n + 1

sum = 0

# 使用 for 循環調用 10 次 test 函數

for i in range(10):

    # 調用 test 函數,並將返回值加到 sum 中

    sum = sum + test(i)

print(‘sum = ‘ + str(sum))

可以的

用一行代碼如何把列表裡的元素去重。

比如:

[python] view plain copy

a = [[1, 2, 3], [2, 3, 4], [4, 5], [1, 2, 3]]

需要的效果是最後得到1,2,3,4,5。

我腦子裡第一閃過的就是用set。

隨後試了一下,使用雙重列表推導式加set,可以輕鬆解決。

[python] view plain copy

set([val for i in a for val in i])

不了解雙重列表推導的同學,可以看我的上一篇博客:雙重列表推導式

解決問題後再思考一下,效率是否足夠高?

使用雙重列表推導式很顯然需要循環列表裡的每一個元素,最後才統一去重,如果這個列表很大的話,會不會出現

爆內存的情況?

其實set有一個update方法,效果是把不在set內的元素加入到set中。

就是說我們有個set,a = {1, 2, 3, 4, 5},然後set.update([1,2,6]),只有6會加入到a。

所以另一種方法就出現了:

[python] view plain copy

[b.update(val) for val in q]

當然這個不能一行解決了,要先b = set(),最後b也是{1, 2, 3, 4, 5}。

print語句print [expression (“,” expression)* [“,”]]print expression [(“,” expression)+ [“,”]][]表示可選項,*表示零次或多次重複,+表示至少一次重複。print是一種特殊的語句,它用於在stdout輸出字符串。print有多種使用形式:print xprint x,yprint x,y,print object, x, y第1行是print的最普通的形式。第2行用print一次輸出多個變量值,print會在變量之間自動加上一個”空格”。第3行與第2行的不同是在y的後面多了一個”,”,這個逗號用來阻止print在打印出x和y的值後,自動附加上一個“\n”字符。第4行,是一種輸出重定向的形式,也就是說把x和y的值輸出到object的write方法中,這同時也表明object必須有一個write方法。在python中,print語句其實只是一種簡寫形式,是下面這段程序的簡寫:import syssys.stdout.write(str(x) + ‘\n’)上面這兩行合起來就是“print x”這一句。可以看出,print是調用str()函數來產生字符串的,並且會在輸出的字符串後加上一個’\n’字符。由於print實際是上調用了stdout的write方法。程序員也可以把stdout賦為別的值,從面實現print的輸出重定向的功能。比如:import sysx=”I’m here!”fp=file(‘log.txt’,’a’)sys.stdout=fpprint x第4行改變了stdou的值,而且fp也是一個文件對象,有一個write方法。這一小段代碼的功能是把print的輸出全部以appand的模式寫到了文件log.txt中。在第4行之後的print語句,都是這種功能。現在假設要恢復print輸出到標準輸出的功能,那麼就需要讓stdout重新指向標準輸出,可以使用如下的方式:sys.stdout=sys.__stdout__在sys.__stdout__中保存有指向標準輸出的信息,通過這行代碼,print可以恢復為原來的功能。有時候要在這兩種模式之間換來換去,一會要輸出到文件中,一會要輸出到標準輸出中,通過改變sys.stdout的值可以實現,不過太麻煩,python提供了另外一種簡便的print語句形式,來解決這種需求:print object,x,y能過這個符號,可以實現輸出重定向到object,當然object必須有一個write方法。否則會出現AttributeError。注意,在這種print形式中,sys.stdout並沒有改變,也就是說在這之後的print語句,具有的還是標準功能。雖然print語句實際上sys.stdou.write(),但sys模塊的import工作並不需要程序員操心,python會自動處理。類似於print的輸出,當用內置函數raw_input([prompt])進行讀取操作時,實際上用的是sys.stdin.read()方法。也可以通過改變stdin的值來控制入操作。相應的也有一個sys.__stdin__用來保存標準輸入的信息。

解決重複調用。

反覆執行Python,Python如何使程序重複運行,Python的周期基本1主題=(\u201Clinux系統\u201D、\u201CMysql數據庫\u201D,\u201CPython語言\u201D)#定義一個元組,三個元素代表三個課程2=0#和定義變量num作為初始分數3我的主題:#元組中的每個元素分配給我,總共三次4’Please進入打印測試分數%s的%我#提示輸入分數,使用格式字符串函數,表示分數的名字我每次獲得的元素名稱,5分=%s意味着字符串輸入()#接收分數由用戶輸入,並將其分配給score6總和+=分數#把分數分配金額相當於金額=和+score7avg=和\/len(科目)#後跳出的for循環,計算平均值。

Python由荷蘭數學和計算機科學研究學會的吉多·范羅蘇姆於1990年代初設計,作為一門叫做ABC語言的替代品Python提供了高效的高級數據結構,還能簡單有效地面向對象編程。

原創文章,作者:簡單一點,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/127035.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
簡單一點的頭像簡單一點
上一篇 2024-10-03 23:13
下一篇 2024-10-03 23:13

相關推薦

  • Python計算陽曆日期對應周幾

    本文介紹如何通過Python計算任意陽曆日期對應周幾。 一、獲取日期 獲取日期可以通過Python內置的模塊datetime實現,示例代碼如下: from datetime imp…

    編程 2025-04-29
  • 如何查看Anaconda中Python路徑

    對Anaconda中Python路徑即conda環境的查看進行詳細的闡述。 一、使用命令行查看 1、在Windows系統中,可以使用命令提示符(cmd)或者Anaconda Pro…

    編程 2025-04-29
  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • Python列表中負數的個數

    Python列表是一個有序的集合,可以存儲多個不同類型的元素。而負數是指小於0的整數。在Python列表中,我們想要找到負數的個數,可以通過以下幾個方面進行實現。 一、使用循環遍歷…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智能、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • Python清華鏡像下載

    Python清華鏡像是一個高質量的Python開發資源鏡像站,提供了Python及其相關的開發工具、框架和文檔的下載服務。本文將從以下幾個方面對Python清華鏡像下載進行詳細的闡…

    編程 2025-04-29
  • Python字典去重複工具

    使用Python語言編寫字典去重複工具,可幫助用戶快速去重複。 一、字典去重複工具的需求 在使用Python編寫程序時,我們經常需要處理數據文件,其中包含了大量的重複數據。為了方便…

    編程 2025-04-29
  • 蝴蝶優化算法Python版

    蝴蝶優化算法是一種基於仿生學的優化算法,模仿自然界中的蝴蝶進行搜索。它可以應用於多個領域的優化問題,包括數學優化、工程問題、機器學習等。本文將從多個方面對蝴蝶優化算法Python版…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29

發表回復

登錄後才能評論