우리는 C#에서 IronPython을 사용하고 있으며 콘솔과 응용 프로그램에서 다른 결과를 얻습니다.IronPython, C# 및 XML - 들여 쓰기를 중단 하시겠습니까?
str=[]
a = 1
b = 0
c = 1
if a==1:
str.append('One')
if b==1:
str.append('Two')
if c==1:
str.append('Three')
out=','.join(str)
print out
을 그러나 동일한 코드는 우리의 응용 프로그램에 오류를 반환 :
이 코드는 IronPython의 콘솔에 잘 실행 문자열 때문에,
unexpected token 'if'
내가 문제 내 줄 바꿈에 의심 파이썬 코드를 포함하는 것은 XML 통과 (XML>의 C#> 파이썬) :
<Set key="PythonCode" value="ipy:str=[]
a = 1
b = 0
c = 1
if a==1:
str.append('One')
if b==1:
str.append('Two')
if c==1:
str.append('Three')
out=','.join(str)"/>
다른 COM mands는 예상 결과를 반환하고, 내 문제는 들여 쓰기 명령 (조건, 루프)입니다.
C# 코드에 액세스 할 수 없기 때문에 한 줄짜리를 쓰거나 들여 쓰기 나 줄 바꿈에 의존하지 않는 방법을 찾고 있습니다. 나는이 시도 :
<Set key="PythonCode" value="ipy:str=[];
a = 1;
b = 0;
c = 1;
if a==1: str.append('One');
if b==1: str.append('Two');
if c==1: str.append('Three');
out=','.join(str);"/>
을하지만 각 조건 이후에 빈 줄이 있어야 때문에, 다시 같은 오류가 발생합니다.
아이디어가 있으십니까?
"파이썬 코드가 들어있는 문자열이 XML을 통해 전달됩니다."왜 이런 일이 발생합니까? –
XML은 디자이너가 응용 프로그램을 사용하기위한 인터페이스입니다. 프로그래머가 아니기 때문에 XML 파일을 만들고 수정하기가 훨씬 쉬워집니다. 이 경우 우리는 파이썬 코드를 구현할 필요가 있으며, 이것이 실행될 필요가있는 코드를 전달하는 유일한 방법이다. – GuyB7
프로그래머가 아니라면 Python을 XML에 어떻게 포함시킬 수 있습니까? –