如题,刚刚测试了下 回车符\x0D 无法入队列
import queue, time
q = queue.Queue()
for i in range(5):
q.put(str(i)+"\x0B"+"|\x0D\x1c\x0D")
while not q.empty():
print (q.get())
q = queue.Queue()
for i in range(5):
q.put(str(i)+"\x0B"+"|\r\x1c\r")
while not q.empty():
print (q.get())
这样可以 \r 换为\n
import queue, time
q = queue.Queue()
for i in range(5):
q.put(str(i)+"\x0B"+"|\n\x1c\n")
while not q.empty():
print (q.get())
打印出来 没有内容,忘指点下代码那里错误了? python 3.6 win10 64 系统
1
msg7086 2018-08-03 04:51:27 +08:00
你贴的整段代码里也没有检查字符串是否进入队列的代码呀,你是怎么看出「无法入队列」的?
回车符本来就是看不见的,什么叫打印出来没有内容?我这里能看到正常打印出了所有的内容。 |
3
msg7086 2018-08-03 13:09:45 +08:00
x0B 是控制字符吧。
你有可以复现写入文本文件的源代码么,能不能贴个 gist ? 我跑了你主题里的代码,能看见竖线。 |
4
qile11 OP 我重新测试发现确实好使,比较乌龙了!
是不是和我内存有关系 或者因为多线程导致问题错误! 我前天运行发现嘿嘿的没有内容才发帖的,现在居然好使! |
5
qile11 OP 刚刚运行又不好使了
|
6
qile11 OP https://s1.ax1x.com/2018/08/04/PDkwef.png
运行截图图片地址 ```` for i in range(5): q.put(str(i)+"\x0B"+"|\x0D\x1c\x0D") l=[] while not q.empty(): print(q.get()) ```` 上面为运行代码 |