Hirdetés

Új hozzászólás Aktív témák

  • Jim-Y
    veterán

    Sziasztok!

    Új vagyok még a Python világában, és most elakadtam.

    Próbálom szeparálni a programomban lévő részeket az alábbiak szerint:
    variables.py --- Kizárólag változókat tartalmaz
    functions.py --- Működéshez szükséges utasításokat tartalmazza.
    main.py --- Fő programrész ami elindítja az utasításfolyamatokat(funtcions.py-n belül.).

    client.py --- Egy bizonyos időben elinduló python, ami kizárólag a változókat mozdítja a variables.py-ben.

    Terveim szerint azt szerettem volna elérni, hogyha elindítom a client.py-t az változtatja futásidőben a variables.py-t és ez kihatással lesz a program működésére.

    Hát ez nem megy. Olyan mintha "static" lenne az összes változó.

    Importok: main.py: Variables.py, functions.py
    functions.py: Variables.py
    client.py: Variables.py

    Client.py tartalma:

    #!/usr/bin/python

    import variables

    variables.tesztboolean = True

    Ennek ellenére folyton False az értéke a változónak. Mit hibáztam?

    Köszönöm!

    Ha itt is úgy működik az import mint máshol, akkor az import nem tesz mást, mint a meghívásnak a helyén beilleszti, kvázi stringként a fájl tartalmát.

    Példa:
    ============================
    variables:

    elso := true;
    masodik := 2;

    ============================
    main:

    import variables; // ezt képzeld el ugy mintha a main-be lenne 2 ilyen sor ezután: elso := true; masodik := 2;

    elso := false; // a program további részében elso false lesz, de a variables fájlban első értéke továbbra is true marad!

    ============================

    De javítsanak ki a pythonban jártasabb kollégák, és azért ne vedd készpénznek amit írtam :) Szerintem ez van a dolog mögött..

Új hozzászólás Aktív témák