<int:pk> whats this does???

Whats the use of int pk in urls.py

It passes that part of the url to the view as a parameter by that name.

You could then write your view function as:

def my_view(request, pk):
    ...

and reference that variable within your view.

Typically, it is used to refer to the primary key of a model.