This MAY be intentional. One of the ideas behind "urbanism" is that in order to reduce vehicle speeds, design speed of a road must be low and the main technical measures are speed bumps, road width and curvature - if you make a road narrow and curvy, it is technically difficult to speed there.
You get curves like that on the german Autobahn too. The problem is that in Europe, you don't get very far without running into either a hill, a swamp or a town, in which case your options are limited.
A hill can only be so steep until the trucks can't go over anymore without dropping to unsafe speeds (60kph are the legal minimum when driving on the Autobahn, trucks need to be able to go faster and do so safely).
A swap can be expensive to go over so you might do a slight curve and only go over a small part of it to save money.
A town might not allow the autobahn to go through or might only allow it on the outer edges.
That's in addition to the fact that lots of roads in Europe are historical, ie, grown from the paths that people have always used between cities, so they don't take a straight, optimal path to begin with.
Another eeason for this is to keep drivers alert. Even small "course corrections" raise awareness of a driver which is the driving force behind non-straight routes in Europe, besides geography of course.
The only rwaly straight sections on the German Autobahn are relicts from the Cold War. The plan was to use them, no joke, together with any parking lots next to them as back-up military airfields. But they are getting rare nowadays.