Python學習筆記 函式(一)

2021-09-25 12:36:56 字數 3339 閱讀 2055

定義乙個簡單函式

def greet_user(username):

print("hello!" + str(username))

username_1 = input("please input your name!\n")

greet_user(username_1)# username_1為實參

這裡username是函式的形參,使用者可以把實參傳入進函式,這個函式就是和你打個招呼。

# 這裡第二個形參有預設值,如果不傳入實參,預設為china

def describe_city(des_city,des_country = 'china'):

print(des_city.title() + ' is in ' + des_country)

city =

for key, val in city.items():

describe_city(key.title(), val)

帶有返回值的函式

"""返回簡單值"""

def get_formatted_name(first_name, last_name, middle_name=""):

if middle_name:

full_name = first_name + str(middle_name) + last_name

else:

full_name = first_name + last_name

return full_name # 返回值

name = get_formatted_name('mahani', 'li', 2)

print(name.title())

這是結合while語句和帶返回字典的函式的乙個例子

def city_country(city, country):

message = {}# 建立乙個字典

message[city] = country #為字典新增鍵——值

return message

while flag:

input_city = input("please input the city")

if input_city == 'q':

break

input_country = input("where is the city locates?\n(input q to quit)")

if input_country == 'q':

break

message = city_country(input_city, input_country)

print(message)

3.傳遞列表的函式

def greet_users(names):

for name in names: #需要寫迴圈遍歷列表

msg = "hello, " + name.title() + "!"

print(msg)

names = ['ke', 'ling', 'king']

greet_users(names)

"""該例項可以修改列表中的元素"""

unprinted_designs = ['robot pendant', 'phone case']

finished_designs =

def pop_designs(unprint_designs, completed_list):

while unprinted_designs:

completed_thing = unprint_designs.pop()

def show_completed(finish_designs):

for finish_design in finish_designs:

print(finish_design)

pop_designs(unprinted_designs, finished_designs)

show_completed(finished_designs) #原列表都進入該列表中

show_completed(unprinted_designs) # 列印原列表,為空

傳遞任意數量的實參

形參加個*號建立乙個空元組來儲存傳入不定數量的實參

# 建立乙個名為 toppings 的空元組

def make_pizza(size, *toppings):

""" 概述要製作的比薩 """

print("\n****** a pizza with the following toppings:")

print(size)

for topping in toppings:

print("- " + topping)

形參加個**號建立乙個空字典,來接受任意數量的鍵——值對

def complete_mes(first_name, last_name, **mes):

profile = {}

profile['first_name'] = first_name

profile['last_name'] = last_name

for key, value in mes.items():

profile[key] = value

return profile

# example

user_profile = complete_mes('albert', 'einstein', location='princeton', field='physics')

print(user_profile)

將函式儲存在模組中

用法可以看批註。

"""將func_learning中的函式匯入到該檔案"""

import func_learning as func

"""你還可以匯入模組中的特定函式,還可以通過用逗號分隔函式名,可根據需要從模組中匯入任意數量的函式"""

from func_learn import make_pizza

"""呼叫庫中所用函式"""

from send_list_func import *

func.greet_user('model')

"""這樣呼叫不太容易理解(如果不熟悉庫的話)"""

pop_designs(unprinted_designs, finished_designs)

show_completed(finished_designs)

Python學習筆記(一)map 函式

map 是 python 內建的高階函式,它接收乙個函式 f 和乙個 list,並通過把函式 f 依次作用在 list 的每個元素上,得到乙個新的 list 並返回。例如,對於list 1,2,3,4,5,6,7,8,9 如果希望把list的每個元素都作平方,就可以用map 函式 因此,我們只需要傳...

Python學習筆記 函式

1.基本呼叫 python 中的函式使用關鍵字 def 來建立乙個函式,正如其他語言中的函式一樣,有函式名,引數,以及返回值。函式的引數不用指定型別,return 可以在任何地方出現,表示函式結束,如果沒有返回內容則預設返回值為none。乙個簡單的無引數,無返回值的hello world def h...

python學習筆記 函式

def fun object,param1,param2 none print type object tuple,呼叫時預設的所有實參全部轉化為tuple傳遞給object fun 1,2,3,4,5,6,7,param1 8 指定param1的呼叫實參,param2引數呼叫預設值函式內可訪問全域...