How to play certain animation when pressing a key or holding a key?

Godot Version

Godot_v4.3-stable

Question

The animation plays once for me, like 1 frame, the first frame when pressing a key and that's it! But what about the other 10 frames?

I also want the animation to loop when holding a key.
I am new to all this, and English is my third language!

Here is the script.

extends CharacterBody2D


const SPEED = 400.0
const JUMP_VELOCITY = -700.0
@onready var sprite_2d: AnimatedSprite2D = $Sprite2D


func _physics_process(delta: float) -> void:
	# Animations
	if (velocity.x > 1 || velocity.x < -1):
		sprite_2d.animation = "walk"
	else:
		sprite_2d.animation = "default"
	
	if Input.is_action_pressed("crouch"):
		sprite_2d.animation = "crouch"
		
	if Input.is_action_pressed("shoot"):
		sprite_2d.animation = "shoot"
		
	# Add the gravity.
	if not is_on_floor():
		velocity += get_gravity() * delta

	# Handle jump.
	if Input.is_action_just_pressed("ui_accept") and is_on_floor():
		velocity.y = JUMP_VELOCITY

	# Get the input direction and handle the movement/deceleration.
	# As good practice, you should replace UI actions with custom gameplay actions.
	var direction := Input.get_axis("ui_left", "ui_right")
	if direction:
		velocity.x = direction * SPEED
	else:
		velocity.x = move_toward(velocity.x, 0,10)

	move_and_slide()
	
	var isLeft = velocity.x < 0
	sprite_2d.flip_h = isLeft

The problem is that when you play one animation it will get overwritten the next frame by a different animation:

To avoid this you should have a look at state-machines. There are a lot of tutorials on youtube

Thanks for the replay, I have solved the issue.
I need to learn more about Godot and coding/Script etc.
I just started a couple of days ago lol!
:
this worked for me
it’s easier than state-machines i think.

if Input.is_action_just_pressed("crouch"):
	sprite_2d.animation = "crouch"
if Input.is_action_just_released("crouch"):
	sprite_2d.animation = "default"
	
if Input.is_action_just_pressed("shoot"):
	sprite_2d.animation = "shoot"
if Input.is_action_just_released("shoot"):
	sprite_2d.animation = "default"