Bisakah fungsi mengambil daftar sebagai parameter python?

Dengan Python, Anda dapat membongkar list, tuple,

# func(*['one', 'two'])
# TypeError: func() missing 1 required positional argument: 'arg3'

# func(*['one', 'two', 'three', 'four'])
# TypeError: func() takes 3 positional arguments but 4 were given
0 (kamus) dan meneruskan elemennya untuk berfungsi sebagai argumen dengan menambahkan
# func(*['one', 'two'])
# TypeError: func() missing 1 required positional argument: 'arg3'

# func(*['one', 'two', 'three', 'four'])
# TypeError: func() takes 3 positional arguments but 4 were given
1 ke daftar atau tupel dan
# func(*['one', 'two'])
# TypeError: func() missing 1 required positional argument: 'arg3'

# func(*['one', 'two', 'three', 'four'])
# TypeError: func() takes 3 positional arguments but 4 were given
2 ke kamus saat memanggil fungsi

Artikel ini menjelaskan konten berikut

  • Buka kemasan list dan tuple dengan
    # func(*['one', 'two'])
    # TypeError: func() missing 1 required positional argument: 'arg3'
    
    # func(*['one', 'two', 'three', 'four'])
    # TypeError: func() takes 3 positional arguments but 4 were given
    
    1
    • Dengan argumen default
    • Dengan argumen panjang variabel
  • Buka kemasan
    # func(*['one', 'two'])
    # TypeError: func() missing 1 required positional argument: 'arg3'
    
    # func(*['one', 'two', 'three', 'four'])
    # TypeError: func() takes 3 positional arguments but 4 were given
    
    0 (kamus) dengan
    # func(*['one', 'two'])
    # TypeError: func() missing 1 required positional argument: 'arg3'
    
    # func(*['one', 'two', 'three', 'four'])
    # TypeError: func() takes 3 positional arguments but 4 were given
    
    2
    • Dengan argumen default
    • Dengan argumen panjang variabel

Perhatikan bahwa jika list, tuple, atau

# func(*['one', 'two'])
# TypeError: func() missing 1 required positional argument: 'arg3'

# func(*['one', 'two', 'three', 'four'])
# TypeError: func() takes 3 positional arguments but 4 were given
0 ditentukan sebagai argumen tanpa
# func(*['one', 'two'])
# TypeError: func() missing 1 required positional argument: 'arg3'

# func(*['one', 'two', 'three', 'four'])
# TypeError: func() takes 3 positional arguments but 4 were given
1 atau
# func(*['one', 'two'])
# TypeError: func() missing 1 required positional argument: 'arg3'

# func(*['one', 'two', 'three', 'four'])
# TypeError: func() takes 3 positional arguments but 4 were given
2, itu tidak dapat dibongkar dan diteruskan ke fungsi sebagaimana adanya

Lihat artikel berikut untuk penggunaan dasar fungsi di Python, argumen default, dan argumen panjang variabel dengan

# func(*['one', 'two'])
# TypeError: func() missing 1 required positional argument: 'arg3'

# func(*['one', 'two', 'three', 'four'])
# TypeError: func() takes 3 positional arguments but 4 were given
1 dan
# func(*['one', 'two'])
# TypeError: func() missing 1 required positional argument: 'arg3'

# func(*['one', 'two', 'three', 'four'])
# TypeError: func() takes 3 positional arguments but 4 were given
2 saat mendefinisikan fungsi

  • Definisikan dan panggil fungsi dengan Python (def, return)
  • Argumen default di Python
  • Argumen panjang variabel (args, *kwargs) dengan Python

Tautan Bersponsor

Buka kemasan list dan tuple dengan # func(*['one', 'two']) # TypeError: func() missing 1 required positional argument: 'arg3' # func(*['one', 'two', 'three', 'four']) # TypeError: func() takes 3 positional arguments but 4 were given 1

Saat menentukan daftar atau tuple dengan

# func(*['one', 'two'])
# TypeError: func() missing 1 required positional argument: 'arg3'

# func(*['one', 'two', 'three', 'four'])
# TypeError: func() takes 3 positional arguments but 4 were given
1 sebagai argumen, itu dibongkar, dan setiap elemen diteruskan ke setiap argumen

def func(arg1, arg2, arg3):
    print('arg1 =', arg1)
    print('arg2 =', arg2)
    print('arg3 =', arg3)

l = ['one', 'two', 'three']

func(*l)
# arg1 = one
# arg2 = two
# arg3 = three

func(*['one', 'two', 'three'])
# arg1 = one
# arg2 = two
# arg3 = three

t = ('one', 'two', 'three')

func(*t)
# arg1 = one
# arg2 = two
# arg3 = three

func(*('one', 'two', 'three'))
# arg1 = one
# arg2 = two
# arg3 = three

sumber.

Daftar digunakan dalam kode contoh berikut, tetapi hal yang sama berlaku untuk tupel

Jika jumlah elemen tidak sesuai dengan jumlah argumen,

def func_default(arg1=1, arg2=2, arg3=3):
    print('arg1 =', arg1)
    print('arg2 =', arg2)
    print('arg3 =', arg3)

func_default(*['one', 'two'])
# arg1 = one
# arg2 = two
# arg3 = 3

func_default(*['one'])
# arg1 = one
# arg2 = 2
# arg3 = 3

# func_default(*['one', 'two', 'three', 'four'])
# TypeError: func_default() takes from 0 to 3 positional arguments but 4 were given
9 memunculkan

# func(*['one', 'two'])
# TypeError: func() missing 1 required positional argument: 'arg3'

# func(*['one', 'two', 'three', 'four'])
# TypeError: func() takes 3 positional arguments but 4 were given

sumber.

Dengan argumen default

Jika fungsi memiliki argumen default, argumen default digunakan jika jumlah elemen tidak mencukupi. Jika ada banyak elemen,

def func_default(arg1=1, arg2=2, arg3=3):
    print('arg1 =', arg1)
    print('arg2 =', arg2)
    print('arg3 =', arg3)

func_default(*['one', 'two'])
# arg1 = one
# arg2 = two
# arg3 = 3

func_default(*['one'])
# arg1 = one
# arg2 = 2
# arg3 = 3

# func_default(*['one', 'two', 'three', 'four'])
# TypeError: func_default() takes from 0 to 3 positional arguments but 4 were given
_9 menimbulkan

def func_default(arg1=1, arg2=2, arg3=3):
    print('arg1 =', arg1)
    print('arg2 =', arg2)
    print('arg3 =', arg3)

func_default(*['one', 'two'])
# arg1 = one
# arg2 = two
# arg3 = 3

func_default(*['one'])
# arg1 = one
# arg2 = 2
# arg3 = 3

# func_default(*['one', 'two', 'three', 'four'])
# TypeError: func_default() takes from 0 to 3 positional arguments but 4 were given

sumber.

Dengan argumen panjang variabel

Jika fungsi memiliki argumen panjang variabel (

def func_args(arg1, *args):
    print('arg1 =', arg1)
    print('args =', args)

func_args(*['one', 'two'])
# arg1 = one
# args = ('two',)

func_args(*['one', 'two', 'three'])
# arg1 = one
# args = ('two', 'three')

func_args(*['one', 'two', 'three', 'four'])
# arg1 = one
# args = ('two', 'three', 'four')
8), semua elemen dengan kunci yang tidak cocok dengan nama argumen diteruskan ke argumen panjang variabel

Bisakah suatu fungsi mengambil daftar sebagai parameter?

Dengan Python, fungsi tidak dapat menerima argumen, argumen tunggal, atau lebih dari satu argumen . Kita dapat melewatkan string, bilangan bulat, daftar, tupel, kamus, dll. sebagai argumen fungsi selama pemanggilan fungsi.

Bagaimana Anda meneruskan daftar sebagai parameter di Python?

Dengan Python, Anda dapat membongkar list , tuple , dict (kamus) dan meneruskan elemennya untuk berfungsi sebagai argumen dengan menambahkan * ke daftar atau tuple dan ** ke kamus saat memanggil . .

Bagaimana Anda membuat fungsi menerima daftar dengan Python?

Mari kita lihat bagaimana menerima daftar Python sebagai masukan tanpa menggunakan metode split(). .
Pertama, buat daftar kosong
Selanjutnya, terima ukuran daftar dari pengguna (mis. e. , jumlah elemen dalam daftar)
Jalankan loop hingga ukuran daftar menggunakan fungsi for loop dan range()
gunakan fungsi input() untuk menerima nomor dari pengguna

Bisakah suatu fungsi mengambil fungsi sebagai parameter Python?

Dalam Python, seperti variabel normal, kita bisa meneruskan fungsi yang ditentukan pengguna sebagai argumen ke fungsi lain . Fungsi yang menerima fungsi lain sebagai parameternya disebut fungsi tingkat tinggi.