您可以通过以下方式从字符串创建原始字符串:
test_file=open(r'c:\Python27\test.txt','r')
如何从字符串变量创建原始变量,例如
path = 'c:\Python27\test.txt'
test_file=open(rpath,'r')
因为我有一个文件路径:
file_path = "C:\Users\b_zz\Desktop\my_file"
当我做:
data_list = open(os.path.expandvars(file_path),"r").readlines()
I get:
Traceback (most recent call last):
File "<pyshell#32>", line 1, in <module>
scheduled_data_list = open(os.path.expandvars(file_path),"r").readlines()
IOError: [Errno 22] invalid mode ('r') or filename: 'C:\\Users\x08_zz\\Desktop\\my_file'
一旦在进程中创建了字符串,就不存在“原始字符串”这样的东西了。这""
and r""
指定字符串的方法仅存在于源代码本身中。
这意味着"\x01"
将创建一个由一个字节组成的字符串0x01
, but r"\x01"
将创建一个由 4 个字节组成的字符串'0x5c', '0x78', '0x30', '0x31'
。 (假设我们正在讨论 python 2 并暂时忽略编码)。
您在评论中提到您正在从用户那里获取字符串(GUI 或控制台输入在这里的工作方式相同) - 在这种情况下,字符串字符转义将不会被处理,因此您无需对此执行任何操作。你可以像这样轻松检查它(或者任何 Windows 等效项,我只说 *nix):
% cat > test <<EOF
heredoc> \x41
heredoc> EOF
% < test python -c "import sys; print sys.stdin.read()"
\x41
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)