I was not able to power an external HD directly from a Raspberry pi 3 (the HD was constantly complaining about a lack of power). Would a Raspberry Pi 4 be able to power a portable hard drive (using the standard charger)?
I measured the idle current and write current of a 1TB SSD, and a2TB HDD.
SSD's idle current is 0mA, and write current around 180mA
HDD's idle (spinning) current is 170mA, and write current 200mA ~ 380mA
My conclusion is that for hobbyist's python programming projects with casual use of SSD or HDD, there is no need to supply external power to the USB hub.
If two SSDs are used for professional projects, it is better to supply external power to the USB hub.