python 字符串名称组合问题。。。晕 基础没打好
f1=open(r'C:\Users\Administrator\Desktop\record.txt')boy=[]
girl=[]
count=1
for each_line in f1:
if each_line[:7] !='=======': #大框架先分开 (整体,以下是局部)
(name,talk)=each_line.split(':',1) #一定要是英文的: 否则报错
if name =='小甲鱼':
boy.append(talk) #append 括号内可以是字符串名称添加的元素即为一个字符串
if name =='小客服':
girl.append(talk)
else:
#分别保存为一个文件 'w'写入
file_name_boy='C:\Users\Administrator\Desktop\boy_'+str(count)+'.txt' #创建外界文件名与内部文件名 联系
file_name_girl='C:\Users\Administrator\Desktop\girl_'+str(count)+'.txt'
boy_file=open(file_name_boy,'w')
girl_file=open(file_name_girl,'w')#'C:\Users\Administrator\Desktop'+'\\'+file_name_girl错误!!!
boy_file.writelines(boy) #write 和writelines 的区别 后者字符串序列
girl_file.writelines(girl)
boy_file.close()
girl_file.close()
count+=1
在保存文件那里不知道怎么改了 请忽略我的注释{:10_266:} {:10_266:}
+字符串的名称+ 怎么就是不对呢
谢谢热情的鱼油!!
因为字符串中部分字符是转义字符,所以导致报错
在字符串前面加个 r 就可以,参考代码:
file_name_boy = r'C:\Users\Administrator\Desktop\boy_' + str(count) + '.txt'
file_name_girl = r'C:\Users\Administrator\Desktop\girl_' + str(count) + '.txt'
本帖最后由 Daniel_Zhang 于 2021-1-28 16:38 编辑
除了楼上大佬说的,还有另一种方法,就是使用转义符转义
file_name_boy = r'C:\\Users\\Administrator\\Desktop\\boy_' + str(count) + '.txt'
file_name_girl = r'C:\\Users\\Administrator\\Desktop\\girl_' + str(count) + '.txt'
这种就比较麻烦了,每次遇到落单的 '\' 就需要用另外一个 反斜杠 '\' 进行转义,否则编译时将会被自动视为转义符而非反斜杠
感觉楼主还是不太熟练,第一行自己也写了 r,但是后面就没有,知其然而不知其所以然 Daniel_Zhang 发表于 2021-1-28 16:37
除了楼上大佬说的,还有另一种方法,就是使用转义符转义
谢谢热心的鱼油!学到了 Twilight6 发表于 2021-1-28 11:49
因为字符串中部分字符是转义字符,所以导致报错
在字符串前面加个 r 就可以,参考代码:
嗯嗯!谢谢你
我还是学的太浅了
页:
[1]