因此,當我在python 2.7.3中使用命令./randline.py test.txt運行此代碼時,此代碼可以正常工作。然而,當我嘗試運行在Python 3的代碼我得到一個錯誤信息「的/ usr/bin中/ Python的:無法打開文件‘3’:[錯誤2]沒有這樣的文件或目錄」在python 2.7.3中完美工作,但在python 3中出錯
import random, sys
from optparse import OptionParser
class randline:
def __init__(self, filename):
f = open(filename, 'r')
self.lines = f.readlines()
f.close()
def chooseline(self):
return random.choice(self.lines)
def main():
version_msg = "%prog 2.0"
usage_msg = """%prog [OPTION]... FILE
Output randomly selected lines from FILE."""
parser = OptionParser(version=version_msg,
usage=usage_msg)
parser.add_option("-n", "--numlines",
action="store", dest="numlines", default=1,
help="output NUMLINES lines (default 1)")
options, args = parser.parse_args(sys.argv[1:])
try:
numlines = int(options.numlines)
except:
parser.error("invalid NUMLINES: {0}".
format(options.numlines))
if numlines < 0:
parser.error("negative count: {0}".
format(numlines))
if len(args) != 1:
parser.error("wrong number of operands")
input_file = args[0]
try:
generator = randline(input_file)
for index in range(numlines):
sys.stdout.write(generator.chooseline())
except IOError as (errno, strerror):
parser.error("I/O error({0}): {1}".
format(errno, strerror))
if __name__ == "__main__":
main()
python 3解釋器的代碼有什麼問題嗎?
你能修理你的縮進嗎? –
尋找你說'/ usr/bin/python 3'而不是'/ usr/bin/python3'的位置 –