日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python函数包_python-函数包和模块

發布時間:2024/9/19 python 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python函数包_python-函数包和模块 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

python函數的作用:

在Python代碼段中如果有一段幾十行的代碼,需要多次重復使用這幾十行代碼時,為了提高代碼的可用性,將代碼段放進函數體內,以后在使用中直接調用該函數模塊即可,函數是一個獨立的函數體或是一段獨立的功能體,最主要的作用是解決代碼的重用性。同時函數也具備一定的靈活性。

包定義與使用

一、包定義:

含有__init__.py文件的目錄我們稱之為包

二、包使用:

目錄內的文件我們稱之為模塊,我們利用包和模塊的目的是找模塊也就是Python文件內的內容,主要是哪些內容,一般都是功能體、代碼段比較封閉,主要有兩個,一個是類、一個是函數。

import package.module

package.module.myfunc()

三、包的定義和使用——示例

①、首先創建一個目錄,命名為pack。目錄內包含_init_.py的就稱之為包。

②、在包內創建一個模塊,命名為main.py。

③、在模塊main.py中我們定義一個函數,名稱為myfunc();

④、在主程序下的index.py下調用函數,其中as bm是為包下的main.py起的別名。

其包含關系為:包(pack)→模塊(main.py)→函數(myfunc();)

函數的定義與使用

①、myfunc函數定義與使用

def myfunc():

//函數體

print('hello world');

myfunc();

運行結果:

hello world

[Finished in 0.1s]

變量作用域

①、全局變量

在一個函數體外的變量,我們稱之為全局變量,可以在函數內直接使用。

a=10;

def myfunc():

print(a);

myfunc();

運行結果:

10

[Finished in 0.2s]

②、局部變量

在一個函數體內的變量,我們稱之為局部變量,不可以在函數外面直接使用。

def myfunc():

a=10;

myfunc();

print(a);

運行結果:

Traceback (most recent call last):

File "D:\python\index.py", line 9, in

print(a);

NameError: name 'a' is not defined

[Finished in 0.1s with exit code 1]

函數參數

①、普通參數

參數把外面真實的值傳遞給里面去使用,外面的稱之為實參、里面的稱之為形參

a=10;

def myfunc(i):

print(i);

myfunc(a);

注:a就是實參、i就是形參,將a的值傳遞給i,被i使用。

運行結果:

10

[Finished in 0.1s]

計算兩數之和

普通參數示例

#已知2018年,求2018年是閏年還是平年?

#閏年的條件有兩個:

#1、能被4整除,但不能被100整除。

#2、能被4整除,同時如果能被100整除的話,則必須同是能被400整除。

year=2000;

def getYear(y):

if (y%4==0) and (y%100!=0) or (y%400==0):

print('yes');

else:

print('no');

getYear(year);

注:通過函數傳參,將year傳遞給y,然后在內部進行計算。

②、默認參數

#默認參數

a=10;

b=20;

def sum(i=1,j=2):

print(i+j);

sum();

注:如果將a和b傳給了i和j,則執行傳遞的值進行計算,如果沒有傳遞值,則使用默認的1和2進行計算,這就是默認參數。默認參數一般在沒有傳遞參數的時候使用。

另外,參數傳值是按照順序傳值的。

x運行結果:

3

[Finished in 0.1s]

③、序列參數

#序列參數

def sum(i):

print(i);

arr=[1,3,5,7,9]

sum(arr);

運行結果:

[1, 3, 5, 7, 9]

[Finished in 0.1s]

④、任意參數

#任意參數

def sum(*vals):

tot=0;

for i in vals:

tot+=i;

print(tot);

sum(2,4,6,8,10);

運行結果:

30

[Finished in 0.1s]

⑤、字典參數

#字典參數

def sum(**vals):

print(vals);

sum(name1='user1',name2='user2',name3='user3');

住:變量和值的關系,變量不能加單引號

x運行結果:

{'name1': 'user1', 'name2': 'user2', 'name3': 'user3'}

[Finished in 0.1s]

字典遍歷:

#字典參數

def sum(**vals):

for i in vals:

print(i,vals[i]);

sum(name1='user1',name2='user2',name3='user3');

運行結果:

name1 user1

name2 user2

name3 user3

[Finished in 0.1s]

函數的返回值

①、print();

#函數返回值

ef sum(i,j):

# print(i+j);

return(i+j);

print(sum(1,2));

注:return(i+j);只返回,不打印,誰調用就返回給誰,如果想打印,在sum前使用print即可。

運行結果:

3

[Finished in 0.1s]

②、return()或return;

是直接打印好,還是直接返回好?

返回能體現出函數的特點,是一個獨立的代碼段或功能體,如果用print它不獨立,為什么,如果我用sum(1,2)傳進去得到的值就是3呢,但是結果3并不著急打印,后續還要處理。

函數如果沒有返回值,返回的就是none。

def sum(i,j):

# print(i+j);

return(i+j);

a=10;

b=20;

str='{}+{}={}'.format(a,b,sum(a,b));

print(str);

運行結果:

10+20=30

[Finished in 0.1s]

結語

感謝閱讀,歡迎在評論區中發表自己不同的觀點,若有其他問題請在評論區留言,喜歡的朋友請多多關注轉發支持一下。

頭條號:ys0202

---------------END---------------

總結

以上是生活随笔為你收集整理的python函数包_python-函数包和模块的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。