He has previously attracted international outrage for his comments, including remarks about the rape and killing of an Australian missionary in 1989. Human Rights Watch has deemed him the "Death Squad Mayor."
Journalist Alex Balcoba was fatally shot this month in Manila, the Philippine capital.
On Tuesday, Duterte said many slain journalists had accepted bribes or criticized people, who then retaliated, the Associated Press reported. He also said a radio commentator killed in Davao City was "rotten."
"Most of those killed, to be frank, have done something," Duterte said, according to AFP. "You won't be killed if you don't do anything wrong."
He also said journalists who defamed others weren't necessarily protected from violent attacks.
"That can't be just freedom of speech. The constitution can no longer help you if you disrespect a person," he said, according to reports.
The National Union of Journalists of the Philippines condemned Duterte's "crass pronouncement" as disrespectful of journalists who have been killed.
"He has also, in effect, declared open season to silence the media, both individual journalists and the institution, on the mere perception of corruption," the organization said in a statement.
The organization said it "does not gloss over the fact that corruption is among the most pressing problems faced by the media. Nor do we deny that this could be the reason for a number of media killings. However, it is one thing to recognize a possible reason for murder; it is a totally different thing to present this as a justification for taking life."
Also Tuesday, Duterte said he would pay police and military officials bounties for every drug lord they turn in, AP reported.
"I'm not saying that you kill them, but the order is dead or alive," he said in a televised news conference.