много переменных из разных файлов с одинокими названиями

copypaste_scripter

Известный
Автор темы
1,296
249
крч вот скрипт. и файлы которые держат переменные. надо как то сделать чтобы обе вариантов значении переменных были доступны. я знаю что можно тупо вручную писать
Python:
from myscriptvars import var1 as var1_from_myscriptvars
from myscriptvars2 import var2 as var1_from_myscriptvars2

но так писать 50 переменных смотрится гавнокодом (ну типо я не против, но хочу научится лучше)

edit:

например
пример:
woof = [
    [50, 100, myscriptvars.sex],
    [50, 100, myscriptvars.alliance],
    [50, 100, 0]

]

code:
import time
from pynput.mouse import Button, Controller
from pynput.keyboard import Key, Listener

mouse = Controller()

from myscriptvars import*
from myscriptvars2 import*

meow = [
    [15, 50, 1],
    [15, 34, 1],
    [54, 23, 1],
    [78, 11, 1]
]

woof = [
    #[x coord, y coord, var]
]

def on_press(key):
    try:

        if key == Key.f4:
            for kitties in meow:
                mouse.position = (kitties[0], kitties[1])
                time.sleep(0.2)
                mouse.click(Button.left, kitties[2])
                time.sleep(0.2)

        elif key == Key.f5:
            for puppies in woof:
                mouse.position = (puppies[0], puppies[1])
                time.sleep(0.2)
                mouse.click(Button.left, puppies[2])
                time.sleep(0.2)

    except AttributeError:
        return False

with Listener(on_press=on_press) as listener:
    listener.join()

myscriptvars:
Sex = 0                     #    0 male 1 female
Alliance = 0                #    0 The Daggerfall Covenant 1 The Aldmeri Dominion 2 The Ebonheart Pact
Race = 0                    #    Breton / Orc / Redguard / High Elf / Wood Elf / Khajiit / Argonian / Dark Elf / Nord / Imperial
Class = 0                   #    Dragonknight / Sorcerer / Nightblade / Templar / Warden / Necromancer / Arcanist
BodyType = 0                #    Muscular / Thin / Large         *Triangle 0-1 / 0-1 / 0-1
Height = 0                  #    0-15
SkinColor = 0               #    *Palette 10x2
BodyMarking = 0                #    0-23
TorsoSize = 0                #    0-15
ChestSize = 0                #    0-15
GutSize = 0                    #    0-15
WaistSize = 0                #    0-15
ArmSize = 0                    #    0-15
HandSize = 0                #    0-15
HipSize = 0                    #    0-15
PosteriorDimensions = 0        #    0-15
LegSize = 0                    #    0-15
FootSize = 0                #    0-15
FaceType = 0                #    Heroic / Angular / Soft        #    *Triangle 0-1 / 0-1 / 0-1
Voice = 0                    #    A-H            *Dropdown A / B / C / D / E / F / G / H
HairStyle = 0                #    0-23
HairColor = 0                #    *Palette 10x2
Age = 0                        #    0-6
Adornment = 0                #    0-23
HeadMarking = 0                #    0-23
ForeheadSlope = 0            #    0-15
CheekboneSize = 0            #    0-15
CheekboneHeight = 0            #    0-15
JawSize = 0                    #    0-15
ChinSize = 0                #    0-15
ChinHeight = 0                #    0-15
NeckSize = 0                #    0-15
EyeColor = 0                #    *Palette 10x2
EyeSize = 0                    #    0-15
EyeAngle = 0                #    0-15
EyeSeparation = 0            #    0-15
EyeHeight = 0                #    0-15
EyeSquint = 0                #    0-15
Eyebrows = 0                #    0-19
EyebrowHeight = 0            #    0-15
EyebrowSkew = 0                #    0-15
EyebrowDepth = 0            #    0-15
NoseShape = 0                #    0-15
NoseHeight = 0                #    0-15
NoseWidth = 0                #    0-15
NoseLength = 0                #    0-15
MouthHeight = 0                #    0-15
MouthCurve = 0                #    0-15
LipFullness = 0                #    0-15
EarSize = 0                    #    0-15
EarRotation = 0                #    0-15
EarHeight = 0                #    0-15
EarTipFlare = 0                #    0-15

edit2: и можно как то этот часть тоже руками не писать? а просто взять для 1 прохода 1 линию, для 2го второй и тд?
1733215082785.png
 
Последнее редактирование:
  • Bug
Реакции: Exesher

papercut

Известный
125
24
обе вариантов значении переменных были доступны
не понял
и можно как то этот часть тоже руками не писать? а просто взять для 1 прохода 1 линию, для 2го второй и тд?
Python:
import myscriptvars
woof = []
for name ,values in vars(myscriptvars).items():
    if(type(values) == int):
        woof.append([50, 100, values])
print(woof)

Но тут конечно лучше реализовать подобное через классы
 
  • Нравится
Реакции: copypaste_scripter