Sunday’s New York Times contains a solicitous, attentive look at a backward, benighted place — North Carolina, where one political party has deviously “seized control” of the state legislature. The Republicans of North Carolina, says the Times, have not only “run quickly through the conservative policy checklist,” they have gone so far as to “skew the balance of power in the state in their favor.”

Imagine — a local political party so dominant that it can enact its agenda at will and even “skew the balance of power in its favor.” Actually, the Times needn’t have ventured so far south to find such tyranny, as New York City itself is a virtual one-party state and will likely remain so for at least the near future.

For instance, the City Council has 48 Democrats and three Republicans, who mostly sit quietly and attend to their constituents’ non-ideological concerns: Street repaving tends to top the New York City Republicans’ agenda. All three citywide elected officials — Mayor Bill de Blasio, Comptroller Scott Stringer and Public Advocate Letitia James — are passionate progressive Democrats who continually try to top each other’s radical proposals. James wants the Department of Education to appoint a “chief diversity officer”? Well, Stringer will launch a task force to funnel city money to companies with greater racial diversity on their boards — so take that.

This is an election year in the city, but you are forgiven if you hadn’t noticed. The citywide elected officials are each running for re-election and are virtually unopposed. Not that no one else is running: De Blasio has about a dozen primary challengers, but none is a serious candidate. Ditto for the comptroller, the public advocate, the borough presidents and the City Council. It is virtually a maxim in New York that incumbents get re-elected.

Partly this is because only Democrats win, so the real race is for the Democratic nomination, and Democratic primaries are heavily weighted in favor of the party favorites. Local county machines in Queens, the Bronx and Brooklyn still have the clout to steer would-be challengers into patronage positions as an inducement not to run and can coordinate campaign help from political staffers who “volunteer” time away from their government-paid jobs to assist needy candidates.

Sometimes you don’t even have to run for the party’s nomination to get it. In 2015 longtime Bronx DA Robert Johnson won his primary unopposed. He then decided he wanted to be a judge instead of district attorney. Since party-controlled county committees decide state Supreme Court judgeship nominations, it was a simple process for the well-connected Johnson (and his wife, actually, who also became a judge) to get the nod from the Bronx machine, which was controlled by then-Assemblyman, now-Speaker Carl Heastie.

This is an election year in the city, but you are forgiven if you hadn’t noticed. The citywide elected officials are each running for re-election and are virtually unopposed.

Johnson then resigned from his post as Bronx DA and left his ballot line open. Ballot vacancies are filled by county party committees, so Bronx boss Heastie was able to insert his own favorite candidate, Judge Darcel Clark, onto the ballot. An annoying open primary was avoided, and Heastie’s machine retained control of the Bronx court system.

A similar machination took place in 1998, when longtime Queens Congressman Tom Manton won the Democratic nomination for his seat in a walkover and then put in his retirement papers. With the same laws on filling ballot vacancies in effect, Manton called his protégé, Assemblyman Joe Crowley, to inform him he would be the Democratic nominee for Congress instead. Crowley is now the Queens County Democratic boss and occupies a top leadership role within the House Democrats. His control of “County,” as the Queens political machine is known, is tight and very profitable: Control of the Surrogate’s Court, which handles probated estates, brings in millions of dollars annually to the small circle of connected attorneys who are assigned the cases.

If you talk to any elected official in the city, they will all agree that council member is the best job to have. The term is four years, so you don’t have to campaign very often; it is local, with no annoying trips to Albany; and best of all, the pay is great — when “reform” was enacted, council members got a 35 percent raise to $148,500. Given that one-third of the council has no job experience aside from being a staffer for another elected official, that’s not chump change.

A few council seats will be opening up this year due to term limits, and in one case, early retirement. About half of those seats will be filled by state legislators who can have them for the taking. One term-limited council member, Inez Dickens, even resigned her seat ahead of time so she could run for the Assembly seat left vacant by Keith Wright, who ran for Congress. Her council seat was then taken by state Sen. Bill Perkins, who had held the seat before Dickens was first elected. These two-steps are not uncommon: Brooklyn husband-and-wife tag team Charles and Inez Barron swapped their council and Assembly seats when his term was up.

In the Bronx, state Sen. Ruben Diaz Sr. will take over Annabel Palma’s council seat; she wanted to replace him in the Senate but was informed by the party bosses that Assemblyman Luis Sepulveda is next in line. So Palma will have to take Sepulveda’s Assembly seat instead.

New York City is politically a mess: If it weren’t for massive tax revenues from Wall Street, our elected officials wouldn’t be able to pretend that spending other people’s money counts as leadership. When the Times claps its hand to its cheek in horror that the Republicans in North Carolina have “seized control of the General Assembly for the first time in a century,” we have to wonder if they are really that naïve or just pointing south so they don’t have to look at the disaster in our own back yard.

Seth Barron is associate editor of City Journal and project director of the NYC Initiative at the Manhattan Institute.