python中的相对路径与绝对路径

相对路径:就是打开所工作目录的文件

>>> f = open('1.py')
>>> f.readline()
'# -*- coding: utf-8 -*-\n'
>>> f.readline()
'\n'
>>> f.close()

绝对路径:就是你想打开的目录下的文件
>>> f = open('c:\users\pycharmprojects\learningpython\script1.py')
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \uXXXX escape
>>> f = open('c:\\user\\pycharmprojects\\learningpython\\script1.py')
>>> f.readline()
'#A first python script\n'
>>> f.readline()
'import sys\n'
>>> f.readline()
'print(sys.platform)\n'
>>> f.readline()
'print(2 ** 100)\n'
>>> f.readline()
"x = 'Spam!'\n"
>>> f.readline()
'print(x * 8)\n'
>>> f.readline()
''
>>> f.close()

因为一直都打不开自己想打开的文件,最后发现问题是因为路径的转义的原因,所有在填写路径的时候必须用双斜杠或者r进行转义否则就会出现错误。

对于文件的几种读取方法:

>>> for line in open('c:\\users\\pycharmprojects\\learningpython\\script1.py'):
	print(line.upper(), end=' ')

	
#A FIRST PYTHON SCRIPT
 IMPORT SYS
 PRINT(SYS.PLATFORM)
 PRINT(2 ** 100)
 X = 'SPAM!'
 PRINT(X * 8)

这里的print使用end=''来抑制添加一个\n,因为行字符串已经有了一个(如果没有的话,我们的疏忽将会变成两行隔开)。第一个例子是读取文本文件的最佳方式,这种写法最简单,运行最快并且对于内存的使用情况来说也是好的。

第二种读取方法是用for循环调用文件的readlines方法,将文件加载到内存,做成行字符串的列表。

>>> for line in open('c:\\users\\pycharmprojects\\learningpython\\script1.py').readlines():
	print(line.upper(), end='')

	
#A FIRST PYTHON SCRIPT
IMPORT SYS
PRINT(SYS.PLATFORM)
PRINT(2 ** 100)
X = 'SPAM!'
PRINT(X * 8)

第三种就是利用while来读取:

>>> f = open('c:\\users\\pycharmprojects\\learningpython\\script1.py')
>>> while True:
	line = f.readline()
	if not line:break
	print(line.upper(), end='')





你可能感兴趣的:(python)