Bagaimana untuk lulus senarai dalam fungsi Python?

WBOY
Lepaskan: 2023-05-09 19:04:37
ke hadapan
1527 orang telah melayarinya

Selepas menghantar senarai ke fungsi, fungsi itu boleh terus mengakses kandungan senarai.

Andaikan ada sekumpulan pakar dan kami ingin menjemput mereka ke bengkel.

def send_invitation(experts):
    '''发送邀请函'''
    for expert in experts:
        print(expert + ',您好,现邀请您参加 XX 研讨会...')

experts = ['小明', '小红']
send_invitation(experts)
Salin selepas log masuk

Keputusan larian:

Hello Xiao Ming, anda kini dijemput untuk menyertai seminar XX…

Hello Huang Lili, anda kini dijemput untuk menyertai dalam seminar XX Akan...

1 Ubah suai senarai

Selepas parameter senarai diserahkan kepada fungsi, fungsi boleh mengubah suainya.

Nota: Sebarang pengubahsuaian yang dibuat pada senarai dalam fungsi adalah kekal.

def send_invitation(experts, informed):
    '''发送邀请函,并移动列表数据到【已通知】列表'''
    while experts:
        expert = experts.pop()
        print(expert + ',您好,现邀请您参加 XX 研讨会...')
        informed.append(expert)

experts = ['小明', '小红']  # 专家列表
informed = []  # 已通知人员列表
print('执行前:experts=' + str(experts) + ',informed=' + str(informed))
send_invitation(experts, informed)
print('执行后:experts=' + str(experts) + ',informed=' + str(informed))
Salin selepas log masuk

Hasil larian:

Sebelum pelaksanaan: pakar=['Xiao Ming', 'Xiao Hong'], dimaklumkan=[]

Hello Xiaohong, , anda kini dijemput untuk menyertai seminar XX...

Hello Xiao Ming, anda kini dijemput untuk menyertai seminar XX...

Selepas pelaksanaan: pakar=[], informed=[' Xiaohong', 'Xiaoming']

Walaupun tanpa ulasan, nama fungsi deskriptif boleh menyatakan dengan jelas apa yang fungsi itu lakukan.
Kami juga boleh memanggil fungsi lain dalam fungsi, yang membantu memecahkan tugas yang rumit kepada satu siri langkah dan menjadikan atur cara lebih mudah dibaca.

2 Senarai baca sahaja

Kadangkala, kami tidak mahu fungsi itu mengubah suai senarai yang diluluskan,

Dalam kes ini, kami boleh menghantar salinan senarai kepada fungsi:

experts = ['小明', '小红']  # 专家列表
informed = []  # 已通知人员列表
print('执行前:experts=' + str(experts) + ',informed=' + str(informed))
send_invitation(experts[:], informed)
print('执行后:experts=' + str(experts) + ',informed=' + str(informed))
Salin selepas log masuk

Hasil jalankan:

Sebelum pelaksanaan: pakar=['Xiao Ming', 'Xiao Hong'], dimaklumkan=[]

Helo Xiaohong, kini menjemput Anda menghadiri seminar XX...

Helo Xiao Ming, kini anda dijemput untuk menghadiri seminar XX...

Selepas pelaksanaan: pakar=['Xiao Ming ', 'Xiao Hong'] ,informed=['小红', '小明']

Walaupun menghantar salinan senarai ke fungsi boleh mengekalkan kandungan senarai asal,

melainkan ada sebab kukuh untuk berbuat demikian. Lakukan.

Oleh kerana mempunyai fungsi menggunakan senarai yang diluluskan meningkatkan prestasi dengan mengelakkan menghabiskan masa

mencipta salinan dalam ingatan, yang amat penting apabila berurusan dengan senarai data yang besar.

Atas ialah kandungan terperinci Bagaimana untuk lulus senarai dalam fungsi Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan