Tuples karo unsur siji ing Python mbutuhake koma mburine

Bisnis

Tuples, sing ora bisa diganti (ora bisa diganti) obyek urutan ing Python.

Ati-ati kudu ditindakake nalika ngasilake tuple kanthi unsur tunggal utawa tuple kosong.

Rincian ing ngisor iki diterangake ing kene.

  • Tuple karo 1 unsur
  • Kurung bunder Tuple bisa diilangi.
  • Tuple kosong
  • Tuples ing argumen fungsi

Tuple karo 1 unsur

Yen sampeyan nyoba kanggo generate tuple karo siji unsur lan nulis mung siji obyek nang kurung babak (), bakal kurung babak () digatèkaké lan diproses lan ora dianggep tuple.

single_tuple_error = (0)

print(single_tuple_error)
print(type(single_tuple_error))
# 0
# <class 'int'>

Koma mburi dibutuhake kanggo ngasilake tuple kanthi siji unsur.

single_tuple = (0, )

print(single_tuple)
print(type(single_tuple))
# (0,)
# <class 'tuple'>

Contone, nalika nggunakake operator + kanggo concatenate kaping tuples, elinga yen sampeyan nyoba kanggo nambah siji unsur lan lali koma, sampeyan bakal entuk kesalahan.

# print((0, 1, 2) + (3))
# TypeError: can only concatenate tuple (not "int") to tuple

print((0, 1, 2) + (3, ))
# (0, 1, 2, 3)

Kurung bunder Tuple bisa diilangi.

Alesan kenapa tuple karo siji unsur mbutuhake koma amarga tuple dudu nilai sing dikurung ing kurung bunder () nanging nilai sing dipisahake karo koma.

Koma sing nggawe tuple, dudu tanda kurung bunder.
Tuples — Built-in Types — Python 3.10.4 Documentation

Sanajan kurung bunder () diilangi, diproses minangka tuple.

t = 0, 1, 2

print(t)
print(type(t))
# (0, 1, 2)
# <class 'tuple'>

Elinga yen koma sing ora perlu sawise obyek dianggep tuple.

t_ = 0,

print(t_)
print(type(t_))
# (0,)
# <class 'tuple'>

Tuple kosong

Kaya kasebut ing ndhuwur, kurung bunder () bisa diilangi nalika makili tuple, nanging dibutuhake nalika ngasilake tuple kosong.

Spasi utawa koma mung bakal nyebabake SyntaxError.

empty_tuple = ()

print(empty_tuple)
print(type(empty_tuple))
# ()
# <class 'tuple'>

# empty_tuple_error = 
# SyntaxError: invalid syntax

# empty_tuple_error = ,
# SyntaxError: invalid syntax

# empty_tuple_error = (,)
# SyntaxError: invalid syntax

Tuple kosong uga bisa digawe dening tuple () tanpa argumen.

empty_tuple = tuple()

print(empty_tuple)
print(type(empty_tuple))
# ()
# <class 'tuple'>

Tuples ing argumen fungsi

Kurung babak Tuple () dibutuhake sanajan ana ambiguitas sintaksis.

Argumentasi fungsi dipisahake kanthi koma, nanging ing kasus iki, perlu kanthi jelas nuduhake manawa fungsi kasebut minangka tuple utawa ora kanthi ana utawa ora ana tanda kurung ().

Tanpa tanda kurung (), saben nilai diterusake menyang saben argumen; kanthi kurung (), saben nilai diterusake minangka tuple kanggo siji argumen.

def example(a, b):
    print(a, type(a))
    print(b, type(b))

example(0, 1)
# 0 <class 'int'>
# 1 <class 'int'>

# example((0, 1))
# TypeError: example() missing 1 required positional argument: 'b'

example((0, 1), 2)
# (0, 1) <class 'tuple'>
# 2 <class 'int'>

Yen tuple ditandhani karo tanda bintang *, unsur tuple bisa ditambahi lan diterusake minangka argumen.

example(*(0, 1))
# 0 <class 'int'>
# 1 <class 'int'>

Kanggo informasi luwih lengkap, waca artikel ing ngisor iki.

Copied title and URL