A. python 在参数传递的时候如何防止字符串转义
虽然不知道怎么解决你提出的问题,但是感觉你可以不用转义字符啊,举个例子 a = """{'a': "'nihao'"} """ >>> eval(a) {'a': "'nihao'"} 你可以将转义符号用双引号和单引号组合的方式代替
B. 请教python中有个关于转义字符的问题:
最根本的原因还是r的用法。
字符串前面加入r则表示为原始字符串,防止字符串内的所有特殊字符发挥作用。
比如输出helloworld,这里的
并没发挥作用:
而你这里的r'x'作拼接,在拼接完成之前就已经对'x'防止过了,再拼接时转义符又发挥作用了。
x44xD1是python2编码问题无法正常显示字符(比如中文),用python3是可以正常显示的。让s转为有特殊意义的字符串,没有任何意义,以后开发也根本用不到
C. python基础问题,关于反斜杠\
如果打印:
print("\ \ \ \ ")
结果也是 \ \ \ \
因为在 \ 后紧跟一个空格导致不会触发 反斜杠的转义作用,也没有必要被转义, 所以"\\(空格)" 和"\(空格)"打印结果是一样的。
如果 print("\") 在 \ 后面没有跟空格, 第二个双引号 ” 就被强制转义了,导致打印错误。
1,只要在 \ 后面加空格,避免被当成转义符; 2,或者前面加个 \ 将其转义。
print("\\")
print("\ ") 都是打印出 \
现在回过头看
print("\\ \\ \\ \\")
print("\ \\ \\ \\") 的区别就在第一个反斜杠是否被转义,
其实 第一个 反斜杠后只要有加空格,是否要将其转义都是可以的。
D. python 字符串如何不转义
#!/usr/bin/python
#encoding:utf-8
charconvertmap={
'a':'a',
'b':'',
'f':'f',
'n':' ',
'r':' ',
}
defstrconvertor(s):
flag=False
result=[]
forcins:
ifnotflagandc=="\":
flag=True
elifflag:
result.append(charconvertmap.get(c,c))
flag=False
else:
result.append(c)
return''.join(result)
s=strconvertor(r"tester")
print"%r"%s
#~>python-u".py"
#~'x08tester'
#~>Exitcode:0Time:0.064
E. Python 字符串使用r开头,反斜杠防止转义,但是如果需要组合变量怎么弄呢
和另一位说的一样,用反斜杠,另外补充一下可以用os.path.join来连接:
importos
os.path.join('c:/windows/','a_path_new','a_sub_path','file.txt')
在合适的操作系统下会补充合适的斜杠的。
F. python3输入字符串如何不转义
如果字符串是固定为{string}这种格式的可以:
s = '{}'
print(s[1:-2])
如果不是固定的格式:s = '{}'
print(s.split('{')[1].split('}')[0])
知识延展:
如果字符串是固定为{string}这种格式的可以:
s = '{}'
print(s[1:-2])
如果不是固定的格式:s = '{}'
print(s.split('{')[1].split('}')[0])
G. python单双引号应该如何选择 从此再也不为输出字符担心
在Python当中字符串的输出既可以使用单引号,也可以使用双引号,使用单引号或双引号是没有区别的;当使用双引号将输出的字符串括起来时,内部也可使用单引号,将单双引号匹配正确即可。
在Python中我们都知道单引号和双引号都可以用来表示一个字符串,比如
str1 = 'python'
str2 = "python"
str1和str2是没有任何区别的。
Python以其易用性而着名,所以刚开始看教程学习看到单引号和双引号都可以使用。
1、python单双引号应该如何选择——单引号版本:
str3 = 'I'm a big fan of Python.'
可以注意到,原来的字符串中有一个',而Python又允许使用单引号' '来表示字符串,所以字符串中间的'必须用转移字符才可以。字符串中间只有一个',这样写看起来还好,但是如果是We all know that 'A' and 'B' are two capital letters.这个字符串呢?
str4 = 'We all know that 'A' and 'B' are t
wo capital letters.'
怎么样,是不是看起来就很不好看,而且很容易出错了?这个时候就是双引号也可以表示字符串该体现作用的时候了。下面是
2、python单双引号应该如何选择——str4的双引号版本:
str4_ = "We all know that 'A' and 'B' are two capital letters."
如果字符串中有双引号,为了避免使用转义符,你可以使用单引号来定义这个字符串。比如:
str5 = 'The teacher said: "Practice makes perfect" is a very famous proverb.'
当你用单引号' '定义字符串的时候,它就会认为你字符串里面的双引号" "是普通字符,从而不需要转义。反之当你用双引号定义字符串的时候,就会认为你字符串里面的单引号是普通字符无需转义。
总之,可以根据个人喜好,可一起使用,注意匹配就好了。
python单双引号应该如何选择?从此你再也不为输出字符担心,在Python当中字符串的输出既可以使用单引号,也可以使用双引号,使用单引号或双引号是没有区别的,你能处理好吗?如果您还担心自己入门不顺利,那么本科目的其他文章一定会帮助你。
H. 请问怎么在python中让多行中禁止转义
最外层的单引号换成双引号试试
I. 关于python的问题
这里有两个知识点:
1、切片,比如有一个字符串:name = 'abcdef',那么在内存中存储如图
取e 是 name[4]或者name[-2]
取ef 是 name[:-2]或者name[:4]
取bc 是name[1:3]或者name[-5:-3] ,需要注意的是,“:”后面取的闭包,也就是不包括本身,这个例子里name[3]的 d是不包括的。
那么path[:-4]就好理解了,就是取字符串开头到 -4位置的字符串'c: est.',不包括'h'。
2、转移字符
python系统中,如果在字符串中使用了一些特殊字符,比如换行、换行、tab制表符等等,还有一些特殊意义的字符,像“ 号,‘号,需要在字符前面加上“”。即转义符,通俗的说,就是“”后面的那个字符,不是字符原本的意思了,它代表了另一个字符。
比如常用到的 是代表换行, 是制表符。
但是有时候我们的字符串中,号就是它本身的意思,不作为转义符,比如题目路径中的中的号。这个时候就要在字符串前面加上一个'r',告诉系统,字符串里面的 号,不是转义符。
所以,你的题目答案就是 c: est.htm
当然,如果题目没有“r”,也就是 path='c: est.html' 那么答案就变成了 c: est.htm , 做为了一个制表符处理。