First off - for the benefit of others, you're missing a new-line after the 'import BAC0' statement.
I've just tested with a slight variant (- not that I'm a Python developer), but it seemed to work; I've masked the exact IP addresses that I tested with):
import BAC0
BAC0.log_level('info')
bacnet = BAC0.lite(ip = '192.168.n.h/24', port = 47809)
value = bacnet.read("195.n.n.h:47808 analogInput 1 presentValue")
print(value)
Are you sure you've got the correct (IP address and) port #?
Has the default gateway been set upon the 'server'/serving/target device (- at least in the case whereby the BACnet client & server are sitting within different subnets)?
Are you sure that this target/'server' device does not also have a DNET & DADR pair of values associated with it - i.e. also require them to be specified?
Is there a F/W blocking communication?
Is the device currently (marked as) 'out-of-service' (or encountering an issue)?
Has it got a valid BACnet license and/or BACnet configuration applied?
You might need to diagnose further with Wireshark, to see what response octets/bytes are been sent back (if any - and maybe even what 'service' request octets/bytes are been sent); or maybe even 'VTS' (Visual Test Shell) instead/too.