2014-04-04 13 views
9

değişkenlerin bir çift, örneğin döndüren Python bir işleve sahip olan: Bir işlev tarafından döndürülen bir değişkene gerek duymazsam PEP8'den Kullanılmayan Değişken kuralını nasıl karşılarım?

row, column = search_in_table(table_name, search_for) 

Bazen sadece işlevi tarafından döndürülen değişkenlerden birini kullanmak gerekir. Ancak bu olduğunda, hat bir PEP8 Unused Variable uyarısıyla işaretlenir.

Bu durumu nasıl ele alabilirim, böylece tüm PEP8 kurallarına uyulabilir miyim?

cevap

15

Eh, zevkinize bağlı olarak, ya bir iki şeyden yapabilirsiniz:

  1. kullanılmayan değişkenler için Python kuralını izleyin ve yerine bir alt çizgi ile her biri:

    # We only need row 
    row, _ = search_in_table(table_name, search_for) 
    

    veya : fonksiyonun

    # We only need column 
    _, column = search_in_table(table_name, search_for) 
    
  2. Endeksi dönüş değeri:

    row = search_in_table(table_name, search_for)[0] 
    

    ya: Teknik olarak, Python fonksiyonları birden fazla değer asla geri dönemez, çünkü

    column = search_in_table(table_name, search_for)[1] 
    

    Bu son çözüm çalışır.

    >>> def func(): 
    ...  # This is equivalent to: return (1, 2) 
    ...  return 1, 2 
    ... 
    >>> func() 
    (1, 2) 
    >>> type(func()) 
    <class 'tuple'> 
    >>> a,b = func() 
    >>> a 
    1 
    >>> b 
    2 
    >>> a = func()[0] 
    >>> a 
    1 
    >>> b = func()[1] 
    >>> b 
    2 
    >>> 
    
: Bunun yerine, bir değerler tuple dönebilir
İlgili konular