Speravo di integrare Python in JMP JSL (versione 17.2). Devo fare un annidamento complesso ma non riesco nemmeno a fare qualcosa di semplice. L'indice di scripting per Python Submit mostra Python che genera una variabile e quindi viene inserita in JSL utilizzando Python Get.
//scripting index code
Names Default To Here( 1 );
Python Init();
Python Submit( "\[
str = 'The quick brown fox jumps over the lazy dog';
a = 200;
]\");
getStr = Python Get( str );
getNum = Python Get( a );
Show( getStr, getNum);
Python Term();
Speravo di iniziare con qualcosa di semplice come questo e poi passare a qualcosa di più avanzato:
Python Submit("\[
for i in range(10):;
if i == 6:;
print(i);
]\");Mi aspettavo che il terminale stampasse solo un sei, tuttavia dopo aver eseguito lo script il risultato era un po' bizzarro.
//Terminal Output<BR />/**********/<BR /><BR />for i in range(10):;<BR />if i == 6:;<BR />print(i);<BR />/**********/
Ne ho provati altri e ho imparato che un paio di cose funzionano. Ma non riesco ancora a far funzionare i cicli nidificati.
//Code that seemingly works
Python Submit("print('Hello World')");
Python Submit("for i in range(10): print(i); print(i);");
//Code that doesn't work for some reason
Python Submit("for i in range(10):; if i == 6; print(i)");
Python Submit("for i in range(10): if i == 6: print(i)");<BR />Python Submit("for i in range(10): if i == 6:; print(i););Se qualcuno avesse qualche consiglio sarebbe molto apprezzato.
Ecco le strutture Submit nell'interfaccia JMP 17 a Python che ho trovato funzionare
Names Default To Here( 1 );
Python Init();
Python Submit("\[
for i in range(11):
if i == 6:
print(i)
print(i)
]\");
Python Submit("i=6
if i == 6: print(i); print('i is 6')
");Se riesci ad aggiornare a JMP18 ti risparmierai molti possibili grattacapi dovuti al nuovo modo di gestire Python in JMP.
Sembra che tu abbia trascurato i rientri necessari.
Python Submit("\[
for i in range(10):
if i == 6:
print(i)
]\"); //6 (then 0 when Python is successfully terminated)Non avevo realizzato che il rientro avesse un impatto così grande in jmp. Grazie per l'aiuto!
Non ha un impatto in JMP ma ha un impatto in Python (stai eseguendo codice Python e non JSL).