Meg Lanning guided the defending champion over the line with an unbeaten 152 as Australia reached its target in 43.5 overs for a second successive win in the tournament.
The West Indies side was restricted to 183 for eight and India overtook that score for the loss of just three wickets in 42.3 overs.
But it was Australia captain Lanning who stole the show from Sri Lanka’s Athapaththu with her winning score.
Athapaththu hit 22 fours and six sixes as she offered the only resistance and helped Sri Lanka set Australia 258 to win.
But a captain’s innings from Lanning, who hit 152 from 134 balls, the seventh highest ever at the Women’s World Cup, along with a classy 60 from Nicole Bolton, helped guide Australia to an eight-wicket victory.
Things got off to the worst possible start for Inoka Ranaweera’s team after Ellyse Perry dismissed Nipuni Hansika with the third ball of the match.
Athapaththu was in the form of her life as she knocked the ball around the park during her explosive 143-ball innings. The Sri Lankan went on the make the highest ever individual score against Australia.
But wickets tumbled around her with Alex Blackwell producing a sensational diving catch to help dismiss Prasadani Weerakkodi before opening batter Bolton picked up her first of two international wickets with just her third ever delivery.
Shashikala Siriwardena helped steady the ship as she helped put on a 52-run partnership with Athapaththu to give Sri Lanka a competitive total.
But Lanning, along with Bolton, took the game away from Sri Lanka with a 132-run partnership as Australia’s captain guided it over the line.
Lanning was in complete control of her innings, finding the boundary 19 times on way to her highest ODI total.
Lanning said: “We were confident - they got a few more than we would’ve liked but we’re very confident with our batting line-up and we knew the outfield was fast.
“As soon as we set that base with Bolton and I, I thought we were able to accelerate and I knew we’d be able to chase that down if we set up nicely. So we were confident at half time but we knew it was going to be a challenge.”
In Taunton, Mandhana underlined her status as one of the in-form batters at the World Cup with an unbeaten century to see India to a resounding seven-wicket win over the West Indies.
Following on from scoring 90 against England, she made it to three figures this time around in a convincing win.
Batting first, the West Indies top order never got to grips with the Indian spinners, slumping to 91 for six despite a lively 43 from opener Hayley Matthews.
The trio of Poonam, Deepti Sharma and Ekta Bisht, proved too much for the West Indian batters, who had to rely on their lower order to put up a decent score.
Shanel Daley (33) and Afy Fletcher (36 not out) gave them some hope, with the West Indies finishing on 183 for eight from its 50 overs.
Poonam Raut then fell for a duck in the first over from Shamilia Connell, with Sharma following not long after.
However, Mandhana, who had made 90 in the opening game against England, and skipper Mithali Raj, combined to put on 108 for the third wicket, and while the skipper departed for 46, Mandhana saw India home in style.
Mandhana said: “Last time I got out on 90 so this time it was in my mind to reach three figures. I’m really happy that I reached a hundred and we won.
“I was just looking at the runs we needed to win and I wasn’t looking at my score until my partner told me. I wasn't that nervous, compared to last time round.
“I hadn’t played six months before coming to the World Cup, I was injured, so I’m really thankful to all the support staff and the Indian management for picking me without any match practice in the last six months.”
Scores in brief
Australia beat Sri Lanka by eight wickets at County Ground, Bristol
Sri Lanka 257-9 in 50 overs (Chamari Athapaththu 178 not out, Shashikala Siriwardena 24, Eshani Lokusooriya 13; Nicole Bolton 2-18, Kristen Beams 2-49, Ellyse Perry 2-52)
Australia 262-2, in 43.5 overs (Meg Lanning 152 not out, Nicole Bolton 60, Ellyse Perry 39 not out; Sripali Weerakkody 1-39, Shashikala Siriwardena 1-62)
Player of the match - Chamari Athapaththu (Sri Lanka)
India beat West Indies by seven wickets at The County Ground, Taunton
West Indies 183-8, 50 overs (Hayley Matthews 43, Afy Fletcher 36 not out, Shanel Daley 33, Stafanie Taylor 16; Poonam 2-19, Deepti Sharma 2-27)
India 186-3, 42.3 overs (Smriti Mandhana 106 not out, Mithali Raj 46, Mona Meshram 18 not out; Shamilia Connell 1-23; Stafanie Taylor 1-24)
Player of the match – Smriti Mandhana (India)