Jython:SyntaxError:语法无效

时间:2016-10-19 07:57:29

标签: python jython

我的代码中出现语法错误。任何人都可以说语法中的错误是什么?我是这种语言的新手,没有太多想法。

错误讯息:

  

WASX7017E:运行文件时收到异常" jdbcconnection.jy&#34 ;;   异常信息:com.ibm.bsf.BSFException:异常来自   Jython:第7行文件中的Traceback(最里面的最后一个):(没有代码对象)   "",第13行AdminTask.createJDBCProvider(' [ - 范围   节点=&#39 + + nodeName的',服务器=&#39 + SERVERNAME' -databaseType Oracle   -providerType" Oracle JDBC Driver" -implementationType"连接池数据源" - name" Oracle JDBC Driver" -description" Oracle   JDBC驱动程序" -classpath [$ {ORACLE_JDBC_DRIVER_PATH} /ojdbc6.jar]   -nativePath"" ]')^ SyntaxError:语法无效

我的代码:

import sys

def jdbcoracle(nodeName,serverName):
        print 'Create JDBC provider'
    AdminTask.createJDBCProvider('[-scope Node='+nodeName+',Server='+serverName' -databaseType Oracle -providerType "Oracle JDBC Driver" -implementationType "Connection pool data source" -name "Oracle JDBC Driver" -description "Oracle JDBC Driver" -classpath [${ORACLE_JDBC_DRIVER_PATH}/ojdbc6.jar] -nativePath "" ]')
    AdminTask.createJDBCProvider('[-scope Node='+nodeName+',Server='+serverName' -databaseType Oracle -providerType "Oracle JDBC Driver" -implementationType "XA data source" -name "Oracle JDBC Driver (XA)" -description "Oracle JDBC Driver (XA)" -classpath [${ORACLE_JDBC_DRIVER_PATH}/ojdbc6.jar] -nativePath "" ]')
        AdminConfig.save()  
    print 'JDBC provider created'   
#-------------------------------------
# Main Application starts from here
#-------------------------------------
global nodeName, cellName
nodeName = sys.argv[0]
serverName = sys.argv[1]
jdbcoracle(nodeName,serverName)

1 个答案:

答案 0 :(得分:2)

您的语法在任何语言中都无效。您有+ - 在重新打开报价之前,您错过了'[-scope Node={},Server={} -databaseType...'.format(nodeName, serverName)

当然,你不应该像这样建立字符串;您应该使用Python中可用的许多字符串格式化功能之一,例如:

ORACLE_JDBC_DRIVER_PATH

我怀疑你的意思是 Event Start End Pres_Avg Pres_Min Pres_Max Pres_Start Pres_End 11-PSV-401002A 4-4-16 12:51 4-4-16 13:58 6.07990537 6.05642176 6.10893869 6.07731962 6.05642176 11-PSV-401002A 4-4-16 14:04 4-4-16 14:29 6.09301376 6.0584569 6.13351011 6.06586695 6.0584569 11-PSV-401002A 4-4-16 14:38 4-4-16 15:09 6.10506467 6.05952168 6.12660933 6.06916332 6.05952168 是一个插值变量,但只有你知道它应该来自哪里。