Error passing arguments to ansible playbook
I'd suggest that you first put some default values within the playbook (if you explicitly want your variables there, for the purpose of .. reducing interactivity/command line args lets say):

- hosts: all
  vars:
    user: greatuser
    passa: greatpassword


Second, I'm pretty sure that pass is a reserved word somewhere, although I'm failing to find it in the documentation. That's why I've changed your variable to passa. The final version of your playbook should look like this:

- hosts: all
  vars:
     user: greatuser
     passa: greatpassword

  tasks:
     - name: Stop services
       shell: "bash stopservices.sh"

     - name: Edit real hosts file
       shell: "bash editrealmachinehosts.sh"

     - name: Create dirs and cloning
       command: python3 {{ user }} {{ passa }}


Note the way used to reference to the username and password variables in the third task - {{ variable }} instead of variable.

Execute your playbook with the following command:

ansible-playbook createdeploy.yaml --extra-vars "user=ras passa=ras" -b --become-user=ras


As your target host is actually localhost (if I did understood you correctly), and since you're not showing your inventory file, I'd like to suggest that you might have to add -c local to the list of arguments of your ansible-playbook command.