中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

有服務器可以做網(wǎng)站嗎站長工具是什么意思

有服務器可以做網(wǎng)站嗎,站長工具是什么意思,申請商標注冊,wordpress10款音樂插件目錄 1.函數(shù)相關術語 2.函數(shù)類型分類 3.棧 4.位置參數(shù)和關鍵字參數(shù) 5.默認參數(shù) 6.局部變量和全局變量 7.返回多個值 8.懷孕函數(shù) 9.匿名函數(shù) 10.可傳遞任意個數(shù)實參的函數(shù) 11.函數(shù)地址與函數(shù)接口 12.內(nèi)置函數(shù)修改與函數(shù)包裝 1.函數(shù)相關術語 函數(shù)的基本概念有函數(shù)頭…

目錄

1.函數(shù)相關術語

2.函數(shù)類型分類

3.棧

4.位置參數(shù)和關鍵字參數(shù)

5.默認參數(shù)

6.局部變量和全局變量

7.返回多個值

8.懷孕函數(shù)

9.匿名函數(shù)

10.可傳遞任意個數(shù)實參的函數(shù)

11.函數(shù)地址與函數(shù)接口

12.內(nèi)置函數(shù)修改與函數(shù)包裝


1.函數(shù)相關術語

函數(shù)的基本概念有函數(shù)頭,函數(shù)名,形參和實參,函數(shù)體,如下圖所示

  • 參數(shù)是可選的,也就是說函數(shù)可以不包含參數(shù),比如 def main():
  • 使用 return result 返回語句來返回一個值,函數(shù)為帶返回值的函數(shù)。
  • 不使用 return 語句,函數(shù)為不帶返回值的函數(shù)。不用 return 的函數(shù),python 默認函數(shù)末尾加上了一個 return None,就是說返回了一個 None,空值。

2.函數(shù)類型分類

帶參數(shù),有返回值的函數(shù)
def myfunc(a, b):result = 0for i in range(a, b + 1):result += ireturn result
不帶參數(shù),無返回值的函數(shù)
def main():print("月滿則虧")print("水滿則溢")print("花滿則衰")print("愛滿則癡")main()  # 執(zhí)行 main()
帶參數(shù),無返回值的函數(shù)
def nprint(n):for i in range(n):print("xxxxxx")print(nprint(2))

3.棧

棧是在函數(shù)調(diào)用時產(chǎn)生的一個內(nèi)存區(qū)域,用來存儲函數(shù)的參數(shù)和局部變量的激活記錄。
當調(diào)用一個函數(shù)時,這個函數(shù)的參數(shù)和局部變量的激活記錄被壓入棧。
當這個函數(shù)執(zhí)行完畢,這些激活記錄將會被從棧中刪除。

示例代碼

def func(Data1, Data2):Data3 = Data1 * Data2return Data3ret = func(1, 2)

對于語句ret = func(1, 2),func在調(diào)用時會產(chǎn)生一個棧,實參傳遞給形參,以及函數(shù)體內(nèi)部的變量激活記錄都會逐步記錄在棧中(稱為"壓入棧"),函數(shù)調(diào)用完畢,這些記錄會逐步從棧中清除出去("出棧")。

棧的特點:"后進先出"。就是最后進來的激活記錄先被彈出堆棧。

4.位置參數(shù)和關鍵字參數(shù)

調(diào)用函數(shù)時,實參的值傳遞給形參,這個過程叫做值傳遞。值傳遞有多種方式,比如按默認位置,或者使用關鍵字參數(shù)。比如下面這個例子中f函數(shù)有3個關鍵字參數(shù):x,y,z。

def f(x, y, z):return (x + y) / z# 使用位置參數(shù)調(diào)用函數(shù)
print(f(1, 2, 3))  # 1.0# 使用關鍵字參數(shù)調(diào)用函數(shù)
print(f(z=2, y=3, x=5))  # 4.0# 同時使用位置參數(shù)和關鍵字參數(shù)
print(f(7, z=3, y=2))  # 3.0

注意:調(diào)用函數(shù)時,位置參數(shù)在左邊,關鍵字參數(shù)在右邊。

5.默認參數(shù)

函數(shù)定義時, 形參如果帶有關鍵字,表示當實參不賦值時,該變量具有默認值。
而當實參有賦值時,使用實參的賦值,而不是用默認值。
# 非默認值參數(shù)必須在默認值參數(shù)之前
def f(x, y=1, z=2):return x + y + zprint(f(1, 1, 1))  # 3
print(f(y=1, x=2, z=3))  # 6
print(f(1, z=3))  # 5

6.局部變量和全局變量

在函數(shù)內(nèi)部定義的變量被稱為局部變量。
在函數(shù)之外創(chuàng)建的變量被稱為全局變量。
使用 global variable 語句將局部變量變?yōu)槿肿兞俊?/span>
示例代碼
x = 1
y = 1
z = 1def f(x):global yx = 2y = 2z = 2f(100)
print(x)  # 1
print(y)  # 2
print(z)  # 1

在以上代碼中:

  • 一開始定義了x和y,它們是全局變量。
  • 然后定義了一個函數(shù)f,形參有x,注意這里的x為函數(shù)的形參名,跟前面那個全局變量x不是同一個
  • 函數(shù)體內(nèi)部先使用了global y語句,它的作用是函數(shù)內(nèi)部等會如果有y的調(diào)用,則y調(diào)用的是全局變量那個y。
  • x = 2語句是一個賦值語句,注意這條賦值語句的x不是全局變量那個x,是形參變量x,因此全局變量那個x的值不會發(fā)生改變,仍為1
  • y = 2語句:由于global y的作用,這里的y是全局變量的那個y,因此全局變量y的值會變成2
  • z = 2語句:由于沒有global z語句,這里的z是函數(shù)內(nèi)部產(chǎn)生的局部變量,因此這里的賦值語句不會對全局變量那個z造成影響。

7.返回多個值

python 函數(shù)允許返回多個值。
函數(shù)多個數(shù)本質(zhì)上是以元組的形式在傳遞值。
def sort(n1, n2):if n1 < n2:return n1, n2return n2, n1print(sort(2, 3))  # (2, 3)
a, b = sort(3, 2)print(a)  # 2
print(b)  # 3def func(num1, num2):return num1 + num2, num1 - num2x = func(2, 3)
print(type(x))  # <class 'tuple'>

8.懷孕函數(shù)

懷孕函數(shù)就是函數(shù)內(nèi)部又定義了一個函數(shù)。

python 函數(shù)很特殊,可以無限嵌套。
def Test():def TestX():print("hello world")for i in range(3):TestX()Test()

9.匿名函數(shù)

匿名函數(shù)就是函數(shù)的簡潔表達,使用關鍵字 lambda 實現(xiàn)。

# 例子1
myfunc = lambda a, b: a + b
print(myfunc(2, 3))   # 5# 例子2(用來裝逼)
ret = (lambda a, b: a * b)(4, 5)
print(ret)  # 20
(lambda data: print(data))("hello world")  # hello world

10.可傳遞任意個數(shù)實參的函數(shù)

在Python中,可以創(chuàng)建一個函數(shù),它可以接收任意數(shù)量的實參。這通過使用星號表達式()實現(xiàn)。星號運算符有兩種形式:單星號(*)和雙星號(**)。

①單星號(*):將實參列表轉(zhuǎn)換為元組。

def mysum(*data):print(type(data))   # <class 'tuple'>ret = 0for x in data:ret += xreturn retprint(mysum(1, 2))  # 3
print(mysum(1, 2, 5, 7))  # 15

②雙星號(**):將字典轉(zhuǎn)換為關鍵字參數(shù)。

def mysum(**data):print(type(data))   #  <class 'dict'>ret = 0for key in data:ret += data[key]print(key, data[key])return retprint(mysum(a=2, b=2, c=5, d=7))  # 這里用等號,等號左邊為關鍵字,右邊為值print(mysum(x=2, y=3))  # 這里用等號,等號左邊為關鍵字,右邊為值

③同時使用單星號(*)和雙星號(**):函數(shù)可以接收任意數(shù)量的實參,并且可以是以上兩種類型。

def print_args_kwargs(*args, **kwargs):print(args)print(kwargs)print_args_kwargs(1, 2, 3, a=1, b=2, c=3)
# 輸出: (1, 2, 3) {'a': 1, 'b': 2, 'c': 3}

11.函數(shù)地址與函數(shù)接口

函數(shù)的本質(zhì)是一個地址,可函數(shù)名賦值來實現(xiàn)相同功能

def myadd(num1, num2):return num1 + num2print(id(myadd))  # 2363817237224
print(type(myadd))  # <class 'function'>go = myadd  # 注意軟件規(guī)范不允許這樣賦值,不然容易出問題
print(id(go), id(myadd))  # id 會相同
print(type(go), type(myadd))  # 類型都是函數(shù)ret = go(1, 2)
print(ret)  # 3

函數(shù)名賦值實現(xiàn)函數(shù)的調(diào)用和定義的分離,實現(xiàn)函數(shù)接口,搭建框架。

# 函數(shù)的定義
def add(x, y):return x + y - 1# 函數(shù)的定義
def minus(x, y):return x - y + 10# 函數(shù)調(diào)用框架
def work(func_name, num1, num2):value = func_name(num1, num2)print(value)for i in range(value):print("hello world")return value + 1# 函數(shù)調(diào)用
work(add, 1, 2)# 函數(shù)調(diào)用
work(minus, 3, 4)

運行結果

2
hello world
hello world
9
hello world
hello world
hello world
hello world
hello world
hello world
hello world
hello world
hello world

12.內(nèi)置函數(shù)修改與函數(shù)包裝

修改內(nèi)置函數(shù)

import osdef myprint(mystr):os.system("echo ---------------")if mystr.find("python is handsome.") != -1:os.system("echo " + mystr)else:os.system("echo " + "python is handsome!")os.system("echo " + mystr)print = myprint  # 切換函數(shù)的地址
print("hello world")
print("Full love leads to madness")

運行結果

---------------
python is handsome!
hello world
---------------
python is handsome!
Full love leads to madness
函數(shù)包裝
  • 加密 or 保護費
  • 還可以給函數(shù)的使用加密
  • 每次調(diào)用都要輸入密碼才行

示例代碼

import os# 備份原來的函數(shù)地址
backossystem = os.system# 等價的調(diào)用
# backossystem("notepad")# 需要收費的系統(tǒng)
def system_check(mystr):if mystr.find("A") != -1:backossystem(mystr)else:print("請開通會員否則 " + mystr + " 無法執(zhí)行")# 修改內(nèi)置函數(shù)地址
os.system = system_check
os.system("echo hello world")

運行結果

請開通會員否則 echo hello world 無法執(zhí)行

end

http://www.risenshineclean.com/news/46337.html

相關文章:

  • 商業(yè)網(wǎng)站建立搜索引擎優(yōu)化seo應用
  • 中國三農(nóng)建設工作委員會官方網(wǎng)站深圳網(wǎng)絡推廣最新招聘
  • 云服務器可以做網(wǎng)站嗎網(wǎng)絡營銷的一般流程
  • 知名企業(yè)網(wǎng)站建設哈爾濱網(wǎng)站制作軟件
  • 做鋼材的網(wǎng)站有哪些網(wǎng)站的網(wǎng)站建設
  • 個人網(wǎng)站畢業(yè)設計搜索關鍵詞然后排名怎樣提升
  • 國外兒童社區(qū)網(wǎng)站模板外鏈信息
  • 做微網(wǎng)站迅宇科技網(wǎng)店推廣是什么
  • 做網(wǎng)站的不給做robots文件百度推廣登錄后臺
  • 在百度上做網(wǎng)站多少錢百度收錄提交
  • 杭州旅游 網(wǎng)站建設必應搜索引擎地址
  • 一個網(wǎng)站可以做多少個小程序營銷推廣方案
  • 做301跳轉(zhuǎn)會影響之前網(wǎng)站排名嗎上海谷歌推廣
  • 在國外網(wǎng)站做中國旅游推廣百度關鍵詞熱度排名
  • 什么專業(yè)可以做網(wǎng)站百度店鋪免費入駐
  • 學校定制網(wǎng)站建設公司深圳優(yōu)化公司高粱seo較
  • 網(wǎng)站建設注冊密碼咋弄百度一下百度百科
  • 做網(wǎng)頁靠哪個網(wǎng)站賺錢湖南競價優(yōu)化哪家好
  • 服務器租用網(wǎng)站搜索關鍵詞排名優(yōu)化軟件
  • 網(wǎng)站 申請百度在線客服中心
  • 邗江區(qū)城鄉(xiāng)建設局網(wǎng)站數(shù)據(jù)分析軟件
  • 如何在本地安裝部署 wordpress深度優(yōu)化
  • 順德企業(yè)手機網(wǎng)站建設廣州seo推廣優(yōu)化
  • 好搜客網(wǎng)站優(yōu)勢的seo網(wǎng)站優(yōu)化排名
  • 眾云網(wǎng)聯(lián)做的網(wǎng)站效果好嗎網(wǎng)絡營銷外包公司
  • 茂易網(wǎng)站建設鏈接購買平臺
  • 淮安企業(yè)網(wǎng)站搜一搜
  • wordpress拿站清遠新聞最新消息
  • b2b平臺選亞馬遜企業(yè)購網(wǎng)站優(yōu)化排名的方法
  • 上海百度關鍵詞推廣名片seo什么意思