Hope ton as West Indies beat South Africa in 2nd ODI

New captain Shai Hope has scored an unbeaten century as West Indies defeated hosts South Africa by 48 runs in the second one-day international.

After winning the toss and electing to bat at Buffalo Park in East London, Hope's superb 128 not out anchored the West Indies score of 8-335in their 50 overs as he struck five fours and seven sixes in his 115-ball innings.

South Africa captain Temba Bavuma struck a career best 144 from 118 balls in the home side's reply, but they were bowled out for 287 in 41.4 overs in their attempt to keep up with the required run rate.

The first game at the same venue was washed out without a ball being bowled on Thursday. The final match of the three-game series will be played in Potchefstroom on Tuesday.

"I thought it (the pitch) was a difficult to start on," Hope said at the post-match presentation. "Once you get in, you've got to go big. You have to play the situation. Credit must go to the batting partners to make it easy for me."

West Indies made a fast start to their innings on a good batting track and managed to maintain the momentum as Hope found willing partners in Nicholas Pooran (39) and Rovman Powell (46).

South Africa handed ODI debuts to four players, batsmen Ryan Rickelton, Tony de Zorzi and Tristan Stubbs, and seamer Gerald Coetzee, and the latter proved the pick of the bowlers with figures of 3-57.

The home side went hard at the target from the start as Quinton de Kock (48 from 26 balls) and Bavuma flayed the bowling, but when the former was out none of the batters to follow could match his quality.

Bavuma was the ninth man out and with him went South Africa's chances.

"If we had restricted them to around 300, considering we had got early wickets (they might have won)," Bavuma said. "There is nowhere else to learn, this is valuable experience."