López signed with the Washington Nationals as an international free agent in June 2012. His signing bonus of just $17,000 was relatively tiny compared to most other contemporaneous Latin American prospects that would reach his same level of success in the minor leagues. The lower signing bonus may have been because Lopez took several years off of baseball to finish his highschool degree, and signed at age 18. He made his professional debut that season with the Dominican Summer League Nationals where he pitched to a 1-1 record and 3.38 ERA in 10.2 innings pitched. López started one game each for both the Auburn Doubledays and Hagerstown Suns in 2013. He pitched for the same two teams in 2014, starting 16 games and finishing with a 7-3 record and 1.08 ERA. In 2015, he pitched for the Potomac Nationals where he was 6-7 with a 4.09 ERA in 19 starts. López started the 2016 season with the Harrisburg Senators. After posting a 3.18 ERA with the Senators through 14 starts, he was promoted to the Syracuse Chiefs on June 27, 2016. He appeared in the 2016 All-Star Futures Game, retiring all three batters he faced as a pitcher for Team World.
Major Leagues
Washington Nationals
On July 17, 2016, Nationals manager Dusty Baker announced López would be called up to make his major league debut with a start on July 19, 2016, against the Los Angeles Dodgers at Nationals Park in Washington, D.C. During the game, he gave up a lead-off home run to Chase Utley, allowed three runs in the first inning, and gave up hits to seven of the first 11 batters he faced. After that, he improved considerably, retiring eight batters in a row at one point, striking out six of them. After he allowed three batters to reach base and gave up two more runs in the fifth inning, he was relieved. He had pitched 4⅔ innings, throwing 105 pitches, giving up six runs on 10 hits, and walking one but striking out nine. The Nationals lost the game 8-4, and he was the game's losing pitcher. However, he was the first player from the Dominican Republic signed and developed by the Nationals to start a game for Washington – which the Nationals considered a major step forward for their organization – and his nine strikeouts was the second-highest strike-out total for a Nationals pitcher during a major league debut, exceeded only by Stephen Strasburg′s 14 strikeouts on June 8, 2010. López left the field to a standing ovation by Nationals fans. The Nationals sent López back to Syracuse on July 20, 2016, to make room on their roster for relief pitcher Koda Glover, who made his major league debut the evening after Lopez's debut. He was recalled and optioned multiple times after his debut. In 19 starts between Harrisburg and Syracuse he compiled a 5-7 record and 3.21 ERA, and in 11 games for the Nationals, he was 5-3 with a 4.91 ERA.
On December 7, 2016, López was traded with Lucas Giolito and Dane Dunning to the Chicago White Sox in exchange for Adam Eaton. López began 2017 with the Charlotte Knights before being called up on August 11. He was placed on the disabled list on August 19 and activated September 1. In 22 starts for Charlotte he pitched to a 6-7 record and 3.79 ERA, and in eight starts for the White Sox he was 3-3 with a 4.72 ERA. López began 2018 with Chicago in the starting rotation. He finished the season with a record of 7-10 in 32 starts. In 2019, he was 10-15 with a 5.38 ERA, and gave up the longest home run of the season in the major leagues, a 505-foot homer. He allowed the lowest ground ball percentage of all major league pitchers.
Pitching style
While at 6 feet tall, Lopez is not especially tall for a pitcher—some media stories highlighting Nationals pitching prospects before both pitchers' MLB debuts made note of the height disparity between Lopez and his Harrisburg teammate, 6-foot-6-inches Lucas Giolito—he generates exceptional velocity on his fastball, which he can throw consistently above 95 mph and flash in the triple digits. Lopez also throws a biting curveball and a changeup. He has been mentioned as a possible future reliever, with Nationals General ManagerMike Rizzo describing him in 2016 as "a guy that can help in a starting role and in a bullpen role".