Overview
Python の read() / readline() / readlines() の相違点を確認する。
Environment
$ cat /etc/os-release NAME="Ubuntu" VERSION="21.04 (Hirsute Hippo)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 21.04" VERSION_ID="21.04" HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" VERSION_CODENAME=hirsute UBUNTU_CODENAME=hirsute $ uname -a Linux x201 5.11.0-37-generic #41-Ubuntu SMP Mon Sep 20 16:39:20 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux $ python3 --version Python 3.9.5 $
file
$ cat interface.log interface GigabitEthernet0/0 ip address 203.0.113.102 255.255.255.252 duplex auto speed auto media-type rj45 $
read()
config_file = open("interface.log","r")
config_cmds = config_file.read()
print(config_cmds)
config_file.close()
$ python3 config.py interface GigabitEthernet0/0 ip address 203.0.113.102 255.255.255.252 duplex auto speed auto media-type rj45 $
readline()
config_file = open("interface.log","r")
config_cmds = config_file.readline()
print(config_cmds)
config_file.close()
$ python3 config.py interface GigabitEthernet0/0 $
readlines()
config_file = open("interface.log","r")
config_cmds = config_file.readlines()
print(config_cmds)
config_file.close()
['interface GigabitEthernet0/0\n', ' ip address 203.0.113.102 255.255.255.252\n', ' duplex auto\n', ' speed auto\n', ' media-type rj45']