# Listelerle çalışma

## **Yeni bir liste oluştur**&#x20;

create\_list()

{% tabs %}
{% tab title="Açıklama" %}
İşlevi bloğun **"Hesaplayıcı"** ayarlarındaki alana girin:&#x20;

**create\_list(name)** - yeni bir liste oluşturur. Sonuç liste ID’sidir.

Parametreler:

<mark style="color:kırmızı;">**!**</mark>**&#x20;name** - liste adı. Ad tek tırnak içinde belirtilir.
{% endtab %}

{% tab title="Örnek" %}
`list_id = create_list("registered")`

<div data-with-frame="true"><figure><img src="/files/2b4237af86061bddd721494777841b84a727c6ee" alt="" width="563"><figcaption></figcaption></figure></div>
{% endtab %}
{% endtabs %}

## Tekrarlarsız bloktan liste oluşturma

create\_list\_if\_not\_exist()

{% tabs %}
{% tab title="Açıklama" %}
**create\_list\_if\_not\_exist('list\_name')** - verilen ada sahip bir liste henüz yoksa yeni bir liste oluşturur ve tanımlayıcısını döndürür; ya da mevcut listenin tanımlayıcısını döndürür.

Gerekli parametre:

**list\_name** - oluşturulacak yeni listenin adı.
{% endtab %}

{% tab title="Örnek" %}

<div data-with-frame="true"><figure><img src="/files/41737eb99db03b03a90713a63386198ec8eef970" alt="" width="563"><figcaption></figcaption></figure></div>

```
new_list = create_list_if_not_exist('Katılımcı listesi')
```

{% endtab %}
{% endtabs %}

## Bir istemciyi listeye ekleme

add\_to\_list()

{% tabs %}
{% tab title="Açıklama" %}
**add\_to\_list(list\_id, client\_id)** - bir istemciyi listeye ekler. İşlev hiçbir şey döndürmez.

Parametreler:

<mark style="color:kırmızı;">**!**</mark>**&#x20;list\_id** - liste ID’si

**client\_id** - MaviBot istemci ID’si. Sağlanmazsa, mevcut istemcinin ID’si kullanılır.
{% endtab %}
{% endtabs %}

## Bir istemciyi listeye taşıma

move\_to\_list()

{% tabs %}
{% tab title="Açıklama" %}
**move\_to\_list(list\_id, client\_id)** - bir istemciyi listeye taşır (Önemli! İstemci diğer tüm listelerden kaldırılır ve belirtilen listeye taşınır). Sonuç bir boole değeridir (True veya False).

Parametreler:

<mark style="color:kırmızı;">**!**</mark>**&#x20;list\_id** - liste ID’si

**client\_id** - MaviBot istemci ID’si. Sağlanmazsa, mevcut istemcinin ID’si kullanılır.
{% endtab %}
{% endtabs %}

## Bir istemciyi listeden kaldırma

remove\_from\_list()

{% tabs %}
{% tab title="Açıklama" %}
**remove\_from\_list(list\_id, client\_id)** - belirtilen client\_id’ye sahip bir istemciyi listeden kaldırır.

Parametreler:

<mark style="color:kırmızı;">**!**</mark>**&#x20;list\_id** - liste ID’si

**client\_id** - MaviBot istemci ID’si. Sağlanmazsa, mevcut istemcinin ID’si kullanılır.
{% endtab %}
{% endtabs %}

## Listeleri silme&#x20;

remove\_list\_from\_project(list\_id, clear\_list)

{% tabs %}
{% tab title="Açıklama" %} <mark style="color:kırmızı;">**!**</mark>**&#x20;list\_id** - gerekli parametre; silinecek listenin ID’si.

**clear\_list** — isteğe bağlı parametre; iki değer alır: True veya False (varsayılan False’tur).

Bu parametreyi sağlamazsanız ve listede istemciler varsa, aşağıdaki yanıtı alırsınız:***"Liste silinemiyor, liste boş değil"***

Liste boşsa, sorunsuz şekilde silinir. Ancak **clear\_list** değerini True olarak ayarlarsanız, liste istemci içerip içermemesine bakılmaksızın silinir.
{% endtab %}
{% endtabs %}

## Etiketleri silme

remove\_label\_from\_project(list\_id, clear\_list)

{% tabs %}
{% tab title="Açıklama" %} <mark style="color:kırmızı;">**!**</mark>**&#x20;list\_id** - gerekli parametre; silinecek etiketin ID’si.

**clear\_list** - isteğe bağlı parametre; iki değer alır: True veya False (varsayılan False’tur).

Bu parametre sağlanmazsa ve etiket istemcilere atanmışsa, aşağıdaki yanıtı alırsınız:&#x20;***"Liste silinemiyor, liste boş değil"***

Etiket herhangi bir istemciye atanmadıysa, sorunsuz şekilde silinir. Ancak **clear\_list** True olarak ayarlanırsa, etiket istemcilere atanmış olup olmamasına bakılmaksızın silinir.
{% endtab %}
{% endtabs %}

## İstemci listesini temizleme&#x20;

clear\_list()

{% tabs %}
{% tab title="Açıklama" %}
**clear\_list(list\_id)** - istemci listesini temizler

Parametreler:

<mark style="color:kırmızı;">**!**</mark>**&#x20;list\_id -** liste ID’si. Kullanımdan sonra belirtilen listedeki tüm istemciler kaldırılır.&#x20;
{% endtab %}
{% endtabs %}

## Listedeki istemci sayısını alma

list\_size()

{% tabs %}
{% tab title="Açıklama" %}
**list\_size(list\_id)** – listedeki toplam istemci sayısını sayar

Parametreler:&#x20;

<mark style="color:kırmızı;">**!**</mark>**&#x20;list\_id**- liste ID’si
{% endtab %}
{% endtabs %}

## Birden fazla listedeki benzersiz istemci girişlerinin sayısını sayma

lists\_joint\_count()

{% tabs %}
{% tab title="Açıklama" %}
**lists\_joint\_count(massive\_list)** – birden fazla listedeki benzersiz istemci girişlerinin toplam sayısını sayar. İşlev giriş olarak bir liste ID dizisi alır ve bir sayı döndürür.

Parametreler:

<mark style="color:kırmızı;">**!**</mark>**&#x20;massive\_list** - benzersiz istemci girişlerinin sayılacağı liste ID’lerini içeren bir dizi. Biçim şöyledir: **\['list\_id1', 'list\_id2', ..., 'list\_idN']**
{% endtab %}

{% tab title="Kopyalama için kod örneği" %}

```
/*Bir liste oluşturma*/
list_id = create_list('Yeni liste')

/*İstemcinin listede olup olmadığını kontrol etme*/
k=inlist(list_id, client_id)

/*Listenin boyutunu al — listedeki toplam istemci sayısı*/
razm=list_size(1)

/*Birden fazla listedeki benzersiz istemci girişlerinin toplam sayısını al*/
k=lists_joint_count('[144636,144634]')
```

{% endtab %}
{% endtabs %}

## Bir istemcinin listede olup olmadığını kontrol etme

inlist()

{% tabs %}
{% tab title="Açıklama" %}
**inlist(list\_id,client\_id)** - bir istemcinin listede olup olmadığını kontrol eder. Sonuç bir boole değeridir (True veya False).

Parametreler:

<mark style="color:kırmızı;">**!**</mark>**&#x20;list\_id** - liste ID’si

**client\_id** - MaviBot istemci ID’si. Sağlanmazsa, mevcut istemcinin ID’si kullanılır.&#x20;
{% endtab %}
{% endtabs %}

## Bir sohbet katılımcısının belirli bir listede olup olmadığını kontrol etme

some\_client\_in\_list()

{% tabs %}
{% tab title="Açıklama" %}
**some\_client\_in\_list(list\_id, recepient)**

Parametreler:

<mark style="color:kırmızı;">**!**</mark>**&#x20;list\_id** - liste ID’si;&#x20;

<mark style="color:kırmızı;">**!**</mark>**&#x20;recepient** - kontrol edilen mesajlaşma uygulaması kullanıcı ID’si (platform\_id). Sohbetler için değişkenin değeri chat\_member\_id’dir.&#x20;

Şu değerleri döndürür:

True - istemci listede;

False - istemci belirtilen listede değil.
{% endtab %}

{% tab title="Örnek" %}

<div data-with-frame="true"><figure><img src="/files/0e1f3ef2094537b70e8107b99b1da997705f7560" alt=""><figcaption></figcaption></figure></div>
{% endtab %}

{% tab title="Kopyalama için kod örneği" %}

```
/*Bir sohbet katılımcısının listede olup olmadığını kontrol etme örneği; burada ilk parametre liste ID’si, ikincisi kullanıcının sohbet ID’sidir*/

r = some_client_in_list(123456, chat_member_id)
```

{% endtab %}
{% endtabs %}

### Bir listeden öğeleri alma

count\_occurrences()

{% tabs %}
{% tab title="Açıklama" %}
**count\_occurrences(array, element)** - listede bulunan belirtilen öğelerin sayısını döndürür.

Parametreler:

**dizi** - gerekli parametre; öğe listesi

**element** - gerekli parametre; sayılacak öğe
{% endtab %}
{% endtabs %}

## Listeden rastgele bir istemci ID’si alma

random\_list\_member(list\_id)

{% tabs %}
{% tab title="Açıklama" %}
random\_list\_member(list\_id) - belirtilen listedeki rastgele bir istemci ID’sini döndürür.

list\_id - gerekli parametre, liste ID’si.

İstemcilerinizi içeren liste ID’si, **"Lists"** bölümünde bulmanız gerekir:

<figure><img src="/files/464ab9ede1c3ed954b7e0cc3f42b8d282f6f17ea" alt=""><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}

## Hesaplayıcıda listelerle çalışma örneği

<details>

<summary>örnek</summary>

İşlevlerin kullanıldığı bir örneğe bakalım **"Hesaplayıcı"** listelerle çalışmak için.

<mark style="color:kırmızı;">**Önemli!**</mark> Daha sonra kullanmak üzere yeni bir liste ID’sini kaydetmeniz gerekir. Bunu yapmak için, işlev sonucunu bir değişkene atayın; yani list\_id = ...

<div data-with-frame="true"><figure><img src="/files/f23d865e09f4ede551093355a6733f1e63a2a743" alt="" width="563"><figcaption></figcaption></figure></div>

<div data-with-frame="true"><figure><img src="/files/e55722a204c91451f43cf5da24ef5f7ab46110c5" alt="" width="375"><figcaption></figcaption></figure></div>

Artık listeyle başka işlemleri kolayca yapabilirsiniz — bir istemcinin listede olup olmadığını kontrol edin, bir istemci ekleyin, taşıyın veya kaldırın.

Örneğin, 12333 ID’li bir istemcinin listede olup olmadığını kontrol edelim:

<div data-with-frame="true"><figure><img src="/files/e16d3fdbf8037b0666e130effb4e6a502c769df2" alt="" width="375"><figcaption></figcaption></figure></div>

<div data-with-frame="true"><figure><img src="/files/8018f4c82a88ab51adec118cca7458ce15e26ded" alt="" width="375"><figcaption></figcaption></figure></div>

İstatistiksel verileri görüntülerken listeleri kullanmak çok uygundur:

<figure><img src="/files/6d6a9f3b07843698bf1d628f668322472aa6552d" alt="" width="563"><figcaption></figcaption></figure>

Çoğu zaman bir grup listedeki benzersiz girişlerin toplam sayısını almak gerekir — bu işlem kolayca şu kullanılarak yapılabilir `lists_joint_count()` işlevini kullanın.

<div data-with-frame="true"><figure><img src="/files/79a6fbd42a5fc0b65424254e0a4a2fe027f2abff" alt="" width="563"><figcaption></figcaption></figure></div>

a

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mavibot.ai/doc/tr/chatbot/functions/hesap-makinesi/lists.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
