это работает на рабочем столе Ubuntu или Centos правильно, но это на сервере Ubuntu или Debian неправильно.
// python code
import pexpect
import os
def runCode(x):
data = {}
mess = ""
try:
x.expect(['.+', pexpect.EOF], timeout=5)
mess += str(x.after,"utf-8")
print(mess)
# x.expect(['.+', pexpect.EOF], timeout=5)
if x.eof():
print("end")
isEnd = "true"
else:
print("No_end1")
isEnd = "false"
except Exception as e:
print(e)
print("No_end2")
isEnd = "false"
print(mess)
data["data"] = mess
data["isEnd"] = isEnd
return data
x = pexpect.spawn("./a.out")
data = runCode(x)
print("........")
print(data)
// C code
#include <stdio.h>
int main(){
printf("hello world\n");
printf("hello world\n");
}
Код, выполняемый в другой системе, отличается.
это на рабочем столе Ubuntu
{'data': 'hello world\r\nhello world\r\n', 'isEnd': 'false'}
это на сервере Ubuntu
{'data': 'hello world\r\n', 'isEnd': 'false'}
вот код, который я хочу, чтобы первый результат, но сервер дает второй результат.