1. python入門:函數加括弧和不加括弧的區別
加括弧是運行函數,不加是函數索引。
2. python 函數 後面加括弧是干什麼用的,。括弧裡面 可以隨便寫 還是空著他,,誰舉個
摘要 從家居風水上看,2012年財運最旺的方位有三個,分別是:正南、正西和中宮位置。龍財運在哪方向與位置。
3. Python中小括弧,中括弧,大括弧怎麼用
小括弧表示元組
如
t=(1,2,3)
中括弧表示列表
如l=[1,2,3]
大括弧表示字典
如
d={1:1,2:2,3:3}
,
中括弧還可以表示上述三種數據類型的下標,如t[0],l[0],d[1]
大括弧也可以表示set
如
s={1,2,3}
小括弧也可以用在函數調用
,改變表達式的優先順序等
4. python中{}[]是什麼用法
python中{}[]是無世紀的年份。
%Y會被無世紀的年份所替代。%m會被01到12之間的一個十進制月份數替代,其他依次類推。
(1)%c 整數轉成對應的 ASCII 字元;
(2)%d 整數轉成十進位;
(3)%f 倍精確度數字轉成浮點數;
(4)%o 整數轉成八進位。
(4)python中括弧函數擴展閱讀:
由於Python語言的簡潔性、易讀性以及可擴展性,在國外用Python做科學計算的研究機構日益增多,一些知名大學已經採用Python來教授程序設計課程。例如卡耐基梅隆大學的編程基礎、麻省理工學院的計算機科學及編程導論就使用Python語言講授。
眾多開源的科學計算軟體包都提供了Python的調用介面,例如著名的計算機視覺庫OpenCV、三維可視化庫VTK、醫學圖像處理庫ITK。
5. python中的函數是什麼
Python3 函數
函數是組織好的,可重復使用的,用來實現單一,或相關聯功能的代碼段。
函數能提高應用的模塊性,和代碼的重復利用率。你已經知道Python提供了許多內建函數,比如print()。但你也可以自己創建函數,這被叫做用戶自定義函數。
定義一個函數
你可以定義一個由自己想要功能的函數,以下是簡單的規則:
函數代碼塊以def關鍵詞開頭,後接函數標識符名稱和圓括弧()。
任何傳入參數和自變數必須放在圓括弧中間,圓括弧之間可以用於定義參數。
函數的第一行語句可以選擇性地使用文檔字元串—用於存放函數說明。
函數內容以冒號:起始,並且縮進。
return [表達式]結束函數,選擇性地返回一個值給調用方,不帶表達式的 return 相當於返回 None。
語法
Python 定義函數使用 def 關鍵字,一般格式如下:
默認情況下,參數值和參數名稱是按函數聲明中定義的順序匹配起來的。
實例
讓我們使用函數來輸出"Hello World!":
#!/usr/bin/python3
defhello():
print("Hello World!")
hello()
更復雜點的應用,函數中帶上參數變數:
實例(Python 3.0+)
比較兩個數,並返回較大的數:
#!/usr/bin/python3
def max(a, b): if a > b: return a
else: return b
a = 4b = 5print(max(a, b))
以上實例輸出結果:
實例(Python 3.0+)
計算面積函數:
#!/usr/bin/python3
# 計算面積函數def area(width, height): return width * height
def print_welcome(name): print("Welcome", name)
print_welcome("Runoob")w = 4h = 5print("width =", w, " height =", h, " area =", area(w, h))
以上實例輸出結果:
函數調用
定義一個函數:給了函數一個名稱,指定了函數里包含的參數,和代碼塊結構。
這個函數的基本結構完成以後,你可以通過另一個函數調用執行,也可以直接從 Python 命令提示符執行。
如下實例調用了printme()函數:
實例(Python 3.0+)
#!/usr/bin/python3
# 定義函數def printme( str ): # 列印任何傳入的字元串
print (str)
return
# 調用函數printme("我要調用用戶自定義函數!")printme("再次調用同一函數")
以上實例輸出結果:
參數傳遞
在 python 中,類型屬於對象,變數是沒有類型的:
以上代碼中,[1,2,3]是 List 類型,"Runoob"是 String 類型,而變數 a 是沒有類型,她僅僅是一個對象的引用(一個指針),可以是指向 List 類型對象,也可以是指向 String 類型對象。
可更改(mutable)與不可更改(immutable)對象
在 python 中,strings, tuples, 和 numbers 是不可更改的對象,而 list,dict 等則是可以修改的對象。
不可變類型:變數賦值a=5後再賦值a=10,這里實際是新生成一個 int 值對象 10,再讓 a 指向它,而 5 被丟棄,不是改變 a 的值,相當於新生成了 a。
可變類型:變數賦值la=[1,2,3,4]後再賦值la[2]=5則是將 list la 的第三個元素值更改,本身la沒有動,只是其內部的一部分值被修改了。
python 函數的參數傳遞:
不可變類型:類似 C++ 的值傳遞,如 整數、字元串、元組。如 fun(a),傳遞的只是 a 的值,沒有影響 a 對象本身。如果在 fun(a))內部修改 a 的值,則是新生成來一個 a。
可變類型:類似 C++ 的引用傳遞,如 列表,字典。如 fun(la),則是將 la 真正的傳過去,修改後 fun 外部的 la 也會受影響
python 中一切都是對象,嚴格意義我們不能說值傳遞還是引用傳遞,我們應該說傳不可變對象和傳可變對象。
python 傳不可變對象實例
通過id()函數來查看內存地址變化:
實例(Python 3.0+)
def change(a): print(id(a)) # 指向的是同一個對象
a=10
print(id(a)) # 一個新對象
a=1print(id(a))change(a)
以上實例輸出結果為:
可以看見在調用函數前後,形參和實參指向的是同一個對象(對象 id 相同),在函數內部修改形參後,形參指向的是不同的 id。
傳可變對象實例
可變對象在函數里修改了參數,那麼在調用這個函數的函數里,原始的參數也被改變了。例如:
實例(Python 3.0+)
#!/usr/bin/python3
# 可寫函數說明def changeme( mylist ): "修改傳入的列表"
mylist.append([1,2,3,4])
print ("函數內取值: ", mylist)
return
# 調用changeme函數mylist = [10,20,30]changeme( mylist )print ("函數外取值: ", mylist)
傳入函數的和在末尾添加新內容的對象用的是同一個引用。故輸出結果如下:
參數
以下是調用函數時可使用的正式參數類型:
必需參數
關鍵字參數
默認參數
不定長參數
必需參數
必需參數須以正確的順序傳入函數。調用時的數量必須和聲明時的一樣。
調用 printme() 函數,你必須傳入一個參數,不然會出現語法錯誤:
實例(Python 3.0+)
#!/usr/bin/python3
#可寫函數說明def printme( str ): "列印任何傳入的字元串"
print (str)
return
# 調用 printme 函數,不加參數會報錯printme()
以上實例輸出結果:
關鍵字參數
關鍵字參數和函數調用關系緊密,函數調用使用關鍵字參數來確定傳入的參數值。
使用關鍵字參數允許函數調用時參數的順序與聲明時不一致,因為 Python 解釋器能夠用參數名匹配參數值。
以下實例在函數 printme() 調用時使用參數名:
實例(Python 3.0+)
#!/usr/bin/python3
#可寫函數說明def printme( str ): "列印任何傳入的字元串"
print (str)
return
#調用printme函數printme( str = "菜鳥教程")
以上實例輸出結果:
以下實例中演示了函數參數的使用不需要使用指定順序:
實例(Python 3.0+)
#!/usr/bin/python3
#可寫函數說明def printinfo( name, age ): "列印任何傳入的字元串"
print ("名字: ", name)
print ("年齡: ", age)
return
#調用printinfo函數printinfo( age=50, name="runoob" )
以上實例輸出結果:
默認參數
調用函數時,如果沒有傳遞參數,則會使用默認參數。以下實例中如果沒有傳入 age 參數,則使用默認值:
實例(Python 3.0+)
#!/usr/bin/python3
#可寫函數說明def printinfo( name, age = 35 ): "列印任何傳入的字元串"
print ("名字: ", name)
print ("年齡: ", age)
return
#調用printinfo函數printinfo( age=50, name="runoob" )print ("------------------------")printinfo( name="runoob" )
以上實例輸出結果:
不定長參數
你可能需要一個函數能處理比當初聲明時更多的參數。這些參數叫做不定長參數,和上述 2 種參數不同,聲明時不會命名。基本語法如下:
加了星號*的參數會以元組(tuple)的形式導入,存放所有未命名的變數參數。
實例(Python 3.0+)
#!/usr/bin/python3
# 可寫函數說明def printinfo( arg1, *vartuple ): "列印任何傳入的參數"
print ("輸出: ")
print (arg1)
print (vartuple)
# 調用printinfo 函數printinfo( 70, 60, 50 )
以上實例輸出結果:
實例(Python 3.0+)
#!/usr/bin/python3
# 可寫函數說明def printinfo( arg1, *vartuple ): "列印任何傳入的參數"
print ("輸出: ")
print (arg1)
for var in vartuple: print (var)
return
# 調用printinfo 函數printinfo( 10 )printinfo( 70, 60, 50 )
以上實例輸出結果:
還有一種就是參數帶兩個星號**基本語法如下:
加了兩個星號**的參數會以字典的形式導入。
實例(Python 3.0+)
#!/usr/bin/python3
# 可寫函數說明def printinfo( arg1, **vardict ): "列印任何傳入的參數"
print ("輸出: ")
print (arg1)
print (vardict)
# 調用printinfo 函數printinfo(1, a=2,b=3)
以上實例輸出結果:
聲明函數時,參數中星號*可以單獨出現,例如:
如果單獨出現星號*後的參數必須用關鍵字傳入。
匿名函數
python 使用 lambda 來創建匿名函數。
所謂匿名,意即不再使用 def 語句這樣標準的形式定義一個函數。
lambda 只是一個表達式,函數體比 def 簡單很多。
lambda的主體是一個表達式,而不是一個代碼塊。僅僅能在lambda表達式中封裝有限的邏輯進去。
lambda 函數擁有自己的命名空間,且不能訪問自己參數列表之外或全局命名空間里的參數。
雖然lambda函數看起來只能寫一行,卻不等同於C或C++的內聯函數,後者的目的是調用小函數時不佔用棧內存從而增加運行效率。
語法
lambda 函數的語法只包含一個語句,如下:
如下實例:
實例(Python 3.0+)
#!/usr/bin/python3
# 可寫函數說明sum = lambda arg1, arg2: arg1 + arg2
# 調用sum函數print ("相加後的值為 : ", sum( 10, 20 ))print ("相加後的值為 : ", sum( 20, 20 ))
以上實例輸出結果:
return語句
return [表達式]語句用於退出函數,選擇性地向調用方返回一個表達式。不帶參數值的return語句返回None。之前的例子都沒有示範如何返回數值,以下實例演示了 return 語句的用法:
實例(Python 3.0+)
#!/usr/bin/python3
# 可寫函數說明def sum( arg1, arg2 ): # 返回2個參數的和."
total = arg1 + arg2
print ("函數內 : ", total)
return total
# 調用sum函數total = sum( 10, 20 )print ("函數外 : ", total)
以上實例輸出結果:
強制位置參數
Python3.8 新增了一個函數形參語法 / 用來指明函數形參必須使用指定位置參數,不能使用關鍵字參數的形式。
以下使用方法是正確的:
以下使用方法會發生錯誤:
6. python中,如圖,為啥一個函數要帶括弧,一個不用帶括弧
第一處函數fu2無參數,如果不帶括弧返回的是這個函數的屬性,需要帶括弧才會返回參數
第二處下面用法是a=f1(5)(8),根據函數定義已經給函數f2()傳導參數,所以return時不需要再用()傳導參數
7. python中的函數參數 value[, mod] 是什麼意思例如:pow(self, value[, mod])
中括弧是可選項,調用的時候可以是
f(1)
也可以是
f(2, mod='somemode')
8. python怎麼編寫函數
在python中,定義一個函數要使用def語句,依次寫出函數名、括弧、括弧中的參數和冒號:,然後在縮進塊中編寫函數體,函數的返回值用return語句返回
def 函數名([參數1,參數2,...,參數n]):
函數體
函數代碼以def關鍵詞開頭,後接函數標識符名稱和圓括弧():
任何傳入參數和自變數必須放在圓括弧中間,圓括弧之間可以用於定義參數
函數的第一行語句可以選擇性的使用文檔字元串-用於存放函數說明
函數內容以冒號起始,並且縮進
return[表達式]結束函數,選擇性的返回一個值給調用方,不帶表達式的return相當於返回None
9. python,如兩圖,花括弧里的內容分別表示什麼意思謝謝
題主你好,
先說第一幅圖, 為啥 print('{:.^10.4}'.format('Flower')) 的輸出結果是 ...Flow...
簡單來說就是一個字元串的格式化,對應該例子來說就是對於'Flower'這個字元串你想以什麼樣的形式輸出!, 而{:.^10.4}就正好定義了這里所謂的輸出形式.
一般來說, format格式化字元串最常用的是就是簡單的替換,如
print('hello {}'.format('friend!'))
上句的輸出結果是 hello friend!
但是,如果你不想讓字元串原樣輸出, 就要用到相應的語法了,這里不細說我們只講例子中的 {:.^10.4} 是怎麼回事:
外層的{}沒啥說的, 語法的一部分;
括弧里的第一個符號冒號, : ,也是語法的一部分;
冒號後面的點, . ,是補齊用的,它可以是任意字元,這個補齊是啥意思下面會說;
點後面的向上的尖括弧, ^ ,表示字元串內容居中顯示;
尖括弧後面的 10 表示輸出的字元串佔10個字元的寬度;
10後面的點, . ,是語法的一部分,作用是對上面10的補充說明,其後值為實際顯示的字元數;
點後面的 4 表示,輸出內容中我只從字元串中取4個字元.
我總結一下意思: 輸出的內容總共有占10個位元組的寬度, 這10個位元組中,從'Flower'中截取4個位元組,將其居中顯示, 因為字元串才佔4個位元組,還有6個位元組的寬度呢,因為字元串是居中顯示的, 所以兩邊還各有三個位元組的位置,使用冒號後面指定的字元,該例是點進行填充.就得到了最終的結果 ...Flow...
-----
再說第二道題, 如果第一道題弄明白了, 這題很好理解.
print('{:.<10}{:=>10}'.format(s1,s2)) 的結果 QQ........====Wechat
這里我就不一一的細講了, 把重點說一下, 和題一不一樣的有兩點:
第一點: 題一中, 字元串是居中顯示(^),而題二, 字元串s1是靠左顯示(<), 字元串s2是靠右顯示(>);
第二點: 題一中對字元串進行了截取(.4), 而題二沒有截取,完全顯示.
-----
擴展閱讀:
網頁鏈接下圖是格式化的語法說明,從上面鏈接中截取的:
寫在最後: 字元串的格式化這東西不難, 但一開始看起來可能有點亂, 有精力的話題主最好將上面給的鏈接中的知識點都看一下, 都弄明白了,再看題就簡單了.
=====
希望可以幫到題主, 歡迎追問.