¿Como puedo hacer que en un script de Python cambie una variable en arduino?

Hola Buenas estoy intentando hacer un control de aforo mediante pulsadores con el Arduino y estoy haciendo con el port serial con python poder cambiar la variable de aforo maximo que es mediante un numero para que el arduino cambie la variable y no se como puedo hacerlo he intentado hacerlo por mi mismo pero no lo estoy consiguiendo . Alguien me puede ayudar porfa, llevo unos cuantos dias intentandolo pero no hay manera de conseguirlo. . La variable a cambiar es maximo_personas .

Os paso código que he hecho con el arduino:

const int  pulsador_asc = 6;    // pin 6 como entrada para el contador de pulsos 
                                // ascendentes
const int  pulsador_des = 7;    // pin 7 como entrada para el contador de pulsos
                                // descendentes
                                  
  
//VARIABLES PARA EL CONTADOR ASCENDIENTE

int contador            = 0;         // contador para el numero de veces presinados
int estado_pulsador_asc = 0;         // estado actual del pulsador
int lastButtonState_asc = 1;         // estado anterior del pulsador

//VARIABLES PARA EL CONTADOR DESCENDIENTE

int estado_pulsador_des = 0;         // estado actual del pulsador
int lastButtonState_des = 1;         // estado anterior del pulsador


//VARIABLE MAX PERSONAS (MODIFICADA POR PYTHON)


int maximo_personas = 15;

#include <LiquidCrystal.h>



const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);


void setup() {

  lcd.begin(16, 2);
  
  Serial.begin(9600);
 
  pinMode(pulsador_asc, INPUT_PULLUP); //Resistencia de pullup interna
  pinMode(pulsador_des, INPUT_PULLUP); //Resistencia de pullup interna

 lcd.print("Personas: ");
  
}  


void loop() {
//  almacenamos la lectura de la entrada de pin 6
  estado_pulsador_asc = digitalRead(pulsador_asc);
  estado_pulsador_des = digitalRead(pulsador_des);

  // comparar el estado del botón a su estado anterior
  if (estado_pulsador_asc != lastButtonState_asc) {
    // si el estado fue cambiado, incremente el conteo
    if (estado_pulsador_asc == HIGH) {
      // si el estado actual es alto, entonces 
      // que pase de off a on:
      contador++;
      ;
      
    } 
  }
 lastButtonState_asc  = estado_pulsador_asc;
   // comparar el estado del botón a su estado anterior
  if (estado_pulsador_des != lastButtonState_des ) {
    // si el estado fue cambiado, decrementa el conteo
    if (estado_pulsador_des == HIGH) {
      // si el estado actual es alto, entonces 
      // que pase de off a on:
      contador--;
      
    } 
  }
  //guarda el último estado actual como el ultimo estado
  //para el proximo bucle
  lastButtonState_des  = estado_pulsador_des;

    if (contador < 0){
      contador = 0;
    }
    
    lcd.setCursor (10,0);
    if (contador < 10){
      lcd.print (" ");
    }
    lcd.print (contador);
    
    
  if (contador >= maximo_personas) {
    lcd.setCursor(0, 1);
    lcd.print("Aforo Maximo");   
  }else{
    lcd.setCursor (0,1);
    lcd.print ("                ");
  }
}