尝试读取文件时获取NameError

时间:2017-02-19 17:53:41

标签: python

请耐心等待我,我还是新手编程,所以我试图读取文件并将一些文本存储到变量中,这是我的代码:

fo=open(vpn_account)
for line in fo:
  if line.find('remote')==0:
    vpn=line.split()
    if len(vpn) > 1:
      servervpn=vpn[1] + ":" + vpn[2]
      hostvpn=vpn[1]
      portvpn=vpn[2]

print servervpn
fo.close()

当它读取下面的文件时会返回49.213.16.5:443,这就是我想要的。

dev tun
proto tcp
remote 49.213.16.5 443
http-proxy-retry
http-proxy 49.213.16.5 8080
keepalive 4 30
cipher AES-128-CBC
auth SHA1
resolv-retry infinite
nobind
persist-key
persist-tun
client
verb 3
auth-user-pass user.txt
route 0.0.0.0  0.0.0.0 vpn_gateway
route 0.0.0.0  0.0.0.0 net_gateway
route-method exe
route-delay 2
pull
mute-replay-warnings
tun-mtu 1500
mssfix 1430
redirect-gateway def1
dhcp-option DNS 8.8.8.8
dhcp-option DNS 8.8.4.4



<ca>
-----BEGIN CERTIFICATE-----
MIIDzjCCAragAwIBAgIBADANBgkqhkiG9w0BAQsFADBmMRYwFAYDVQQDDA1ERUxU
QSBTU0ggVlBOMRcwFQYDVQQKDA5ERUxUQSBDT01QVVRFUjELMAkGA1UEBhMCSUQx
EjAQBgNVBAgMCUluZG9uZXNpYTESMBAGA1UEBwwJRWFzdCBKYXZhMB4XDTE1MDEw
NjA4NDg1OFoXDTI1MDEwMzA4NDg1OFowZjEWMBQGA1UEAwwNREVMVEEgU1NIIFZQ
TjEXMBUGA1UECgwOREVMVEEgQ09NUFVURVIxCzAJBgNVBAYTAklEMRIwEAYDVQQI
DAlJbmRvbmVzaWExEjAQBgNVBAcMCUVhc3QgSmF2YTCCASIwDQYJKoZIhvcNAQEB
BQADggEPADCCAQoCggEBANoYM2+r1IaiDoBmZbylWpfKz/XEFmiEH0oLBl7EzFB6
rtaz9XjbkU6TyFQcnL3AWHKbkP7Gs7oJKwAexb5mQ3jVEIU+krQ4yl89wE86DleU
Kd1ez76XjbYzMMRFukJC/EiGJXfQAvctgFIRUKbruppbFMjbSGFovfPzll0RSdvM
2o6nY7VrtYp5YhA/H06Modum/bt8ScKYBS0Di00s+5AV+X2kFVvJzsCDHmXMDhfz
mrb3bgQmls32Q5EhsROEcljcRXRLx5JELH/4NSpKNlysJPEj7iMRppv4VT5jh+OL
nU/c7/W4W95y+tH6AcN/dQ9MBS2D5+UQKPr8YSr9Tu0CAwEAAaOBhjCBgzAPBgNV
HRMBAf8EBTADAQH/MAsGA1UdDwQEAwIB9jBjBgNVHSUEXDBaBggrBgEFBQcDAQYI
KwYBBQUHAwIGCCsGAQUFBwMDBggrBgEFBQcDBAYIKwYBBQUHAwUGCCsGAQUFBwMG
BggrBgEFBQcDBwYIKwYBBQUHAwgGCCsGAQUFBwMJMA0GCSqGSIb3DQEBCwUAA4IB
AQDUC7mRz0I/5gN3WFis3g/uMulf10edhXn6/iVQf4BptdGGLQR9ppQJVbp41kgX
Yh7vKZtYKY7S8+gPjaLP5s4UDHL3m2gwprN4zYsoM2z6FDH1qFz0tRe6iHLT4Jz3
0KYUry13NwscK8I3qmIAHtZmPShYpnXJSTz492Z50oluh/URwnNmdeFYLpvjnX+a
2ke8oMwW6rrJXHCTOnQS0Uw+hLaEhxqXaKPv84iMZB+nJRD3gMiBnSW0uqUR1uj0
I/mJbSsbcpSj4HTLAI7gfNs+4G5Xa6gHHQaKGMXG94+T8BNdTKmMFoFXrglNJ6pe
tMrFPVOr6ZPhOuxQIKRSnPfc
-----END CERTIFICATE-----

</ca>

<cert>
-----BEGIN CERTIFICATE-----
MIID0DCCArigAwIBAgIBADANBgkqhkiG9w0BAQsFADBnMRwwGgYDVQQDDBMzMjE3
MTY0MzQ0MjMzODgwMjUxMRwwGgYDVQQKDBMzMjE3MTY0MzQ0MjMzODgwMjUxMRww
GgYDVQQLDBMzMjE3MTY0MzQ0MjMzODgwMjUxMQswCQYDVQQGEwJVUzAeFw0xNTA1
MTIwNjQ0MjVaFw0zNjEyMzEwNjQ0MjVaMGcxHDAaBgNVBAMMEzMyMTcxNjQzNDQy
MzM4ODAyNTExHDAaBgNVBAoMEzMyMTcxNjQzNDQyMzM4ODAyNTExHDAaBgNVBAsM
EzMyMTcxNjQzNDQyMzM4ODAyNTExCzAJBgNVBAYTAlVTMIIBIjANBgkqhkiG9w0B
AQEFAAOCAQ8AMIIBCgKCAQEAyAApbf4Yn9eKyje5FcwdL+Qz2kxlXHOno1ZBMOIm
hbopcLvjBs8dpME9PaSsIeyC5hr6V3dCMwEUIsTa2G6mYl7aB2vGk08FtS9QfwXS
9UOkP5/g0kWAxCLgCQ5JGyjs+WGjZKWivE3KgOWmKu08mnH1e5ibAEeE7hqBRcHj
WxxgFGLWygcqPCx4bkMV4i0D7DH8NZA+prohUsIjhZriZwrMXOuNo42xI1ETS31v
yHdXnzUXpcnS0BmIruWr54YD/fqqxctYkl7ypLm+KE/1QxsH4+rZ+QaaXLs4QBPG
AqE0gWGZ7WKNgs31OY25AETp5IvX/T0qxnY74dzz0slxFwIDAQABo4GGMIGDMA8G
A1UdEwEB/wQFMAMBAf8wCwYDVR0PBAQDAgH2MGMGA1UdJQRcMFoGCCsGAQUFBwMB
BggrBgEFBQcDAgYIKwYBBQUHAwMGCCsGAQUFBwMEBggrBgEFBQcDBQYIKwYBBQUH
AwYGCCsGAQUFBwMHBggrBgEFBQcDCAYIKwYBBQUHAwkwDQYJKoZIhvcNAQELBQAD
ggEBABISgjEhJ5PDseO1GIvmauEiEAyWlCaTGDKMkau+VtFPp/xBJ6XmufLQfYUH
W6C83571o3cPD1NGzkUZL6jEQHYKNoWtognYVjvfZa6ZJvx4QHUZkWycC+Tg91V2
nQxGBRb/qCXid2FEo1ueTjC2VTPRigZnTdqoXOh/94m53VqkCwBkwFe0vSBl0LEL
uwaBR771QdNtPXbRRVWbuGa8jCA+2eWl2P5PCEDTsgKjPxDVAL2qkZFDtQ6njULx
9cUfFudc6vUIBEYfYSVm6h6pQxZitR8OW9wHo54z9US0vZWzA+PTkr+jKU4QV3So
QjFDajAw8jDxvjs2TQR9DXrXSKk=
-----END CERTIFICATE-----

</cert>

<key>
-----BEGIN RSA PRIVATE KEY-----
MIIEogIBAAKCAQEAyAApbf4Yn9eKyje5FcwdL+Qz2kxlXHOno1ZBMOImhbopcLvj
Bs8dpME9PaSsIeyC5hr6V3dCMwEUIsTa2G6mYl7aB2vGk08FtS9QfwXS9UOkP5/g
0kWAxCLgCQ5JGyjs+WGjZKWivE3KgOWmKu08mnH1e5ibAEeE7hqBRcHjWxxgFGLW
ygcqPCx4bkMV4i0D7DH8NZA+prohUsIjhZriZwrMXOuNo42xI1ETS31vyHdXnzUX
pcnS0BmIruWr54YD/fqqxctYkl7ypLm+KE/1QxsH4+rZ+QaaXLs4QBPGAqE0gWGZ
7WKNgs31OY25AETp5IvX/T0qxnY74dzz0slxFwIDAQABAoIBAEcVb6QtZJkjJawb
xAfQRStpY1iaQIhsfs+Z74+tQV3UPbhYvycDZBjTqa2IIrnn8tpQClweAgRYxMxa
xSGZqj9aUQnEL47ZzkCIcYbEDieoA++tJl313/9WGeR+FFO35wn3vvgduspMp8XK
WZX2Pczy5foo0iZ2RPPPrdSaRfFycdnNmtvYLDdZhy746OYdthTh+gprg3FTzNC8
6/91zVArBQr3kHOQ7gcPR2NXorjH2M+yf4Mno5afC/DYQNmyvbFv7/dpwFmaM6Y4
MeHNpjccDWRpxzKv7+W0k2CjO8CeiG/Qqm7WzVIhiyJvPzMR9hMXwZIrvEyhY43R
q80EA0kCgYEA+AC1tKjKm2zwnyVhhTHXZqalYts2DgQBmxa+AVEqJ2NKgrVWp752
X5ANkUnIlJwvmSf2k9Y08oK/jjwBMK4Fc3VKp+DQCBdM2SOudato5aKolJwmQn6P
Sn5e/GmEaq/d/yc20hjTWb3zrmL1dflGBelo4ahXOBCXRnbwCA8eG8sCgYEAznMw
aBynOCIditRcDg5qsRpVj1B3QAvDvndu62QyKh4A64symyXGy9gHBck59eLY0nZf
X7utHOaHcIUoDchQ+MPi05wbdsdLUvJHt+irOpzqjFVZqL0+DnJO5sUW6Ip4STrl
8d/HLLmOVHd1G4NlAEI/GfahRlUi+fRWF69+LmUCgYAXskmqZ25kh3Y+Xp4A0hBY
2Jd46KUzlaJppTSmf5DdjpkyAA21nXdGDkedmEU4HexWYAEpgxAwE9olxwn+EsKm
k5B8lfiKrV9EaCplR+mP94jQGlN1iw45+fUtfQ+P+hnmJWMRlBmtu36rLP1zNkxA
iFrjJOigjMVHkFnDC16/HQKBgGE2hHjB5UvdZKPW03Ia/8pdaCSP81dJMuchPi3B
hI2oiy5e4XmFFFMwaj4jPxO1ufuAmfBuY1nUg7pMOUwkI1zAgLK8M4J+3c01IOhM
uzRiZ1+lYQ6/7dTHprer3tmpOnLhNR3sDdHVnlvP1GkcOhchGq2TIOYJeOrSTyfg
Dz6xAoGAZBVGUpSVDAe71LkGigb5SqK+0MpfbESL6jwWwGy1+TDVRPGJthxFWIaA
EIJjdEnWIW8b3gENQavRY2E/gurZVjJ0BuYF4wbzeGd+CKTFAJb5POSOzRKMT127
konRU5LiDTsm7iLQjqacXe7GAisGAVQ7dz1LeTuUHHrdWhMJikk=
-----END RSA PRIVATE KEY-----

</key>

但是当脚本读取下面的文件时,我得到:

Traceback (most recent call last):
  File "./test", line 12, in <module>
    print servervpn
NameError: name 'servervpn' is not defined

这里是脚本有问题的文件:

client
dev tun
proto tcp
remtote 45.64.99.44 443
resolv-retry infinite
nobind
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450
persist-key
persist-tun
auth-user-pass id2tcpvpncom443.txt
comp-lzo
reneg-sec 0
verb 3


<ca>
-----BEGIN CERTIFICATE-----
MIIE4jCCA8qgAwIBAgIJANc096jxw0XjMA0GCSqGSIb3DQEBCwUAMIGmMQswCQYD
VQQGEwJpZDELMAkGA1UECBMCaWQxEzARBgNVBAcTCnRjcHZwbi5jb20xEzARBgNV
BAoTCnRjcHZwbi5jb20xEzARBgNVBAsTCnRjcHZwbi5jb20xEzARBgNVBAMTCnRj
cHZwbi5jb20xEzARBgNVBCkTCnRjcHZwbi5jb20xITAfBgkqhkiG9w0BCQEWEmNv
bnRhY3RAdGNwdnBuLmNvbTAeFw0xNTA4MDYxNTQ3NDlaFw0yNTA4MDMxNTQ3NDla
MIGmMQswCQYDVQQGEwJpZDELMAkGA1UECBMCaWQxEzARBgNVBAcTCnRjcHZwbi5j
b20xEzARBgNVBAoTCnRjcHZwbi5jb20xEzARBgNVBAsTCnRjcHZwbi5jb20xEzAR
BgNVBAMTCnRjcHZwbi5jb20xEzARBgNVBCkTCnRjcHZwbi5jb20xITAfBgkqhkiG
9w0BCQEWEmNvbnRhY3RAdGNwdnBuLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEP
ADCCAQoCggEBALcDY1/uF223FlVMfI8Bw06eH6uXlav+w7BxgHNUPBbJKDQUl5K7
DLlK/hGnT1xf3gPvt89EEX9ZuDK79PUpOtgbDfDkYZahF6oue3IGuhZ3/sloRnOs
vFTMPHmGhbMzkLW6fA/p1HsKWyjcrJZo3oiiI3fWmMe1KSO79b5IPtH2GKf/OoQ1
bBV685aucuNbUPwZ9v1Q9xpqPquu8+XdyW0QUcc/U8L/PIky+mOBu2/shGjzKkpk
+s5SlhLWK76MwtUCQTlUI3Rv55x84AUtti+iqV8t9z0l7GhppBeE3h6Ut/ywJZES
Hg8EPpxH9H2B0PK3vui0gP36EJwCFgNSAsECAwEAAaOCAQ8wggELMB0GA1UdDgQW
BBTfkmuC+1lJQc5ct80TvA613QML6TCB2wYDVR0jBIHTMIHQgBTfkmuC+1lJQc5c
t80TvA613QML6aGBrKSBqTCBpjELMAkGA1UEBhMCaWQxCzAJBgNVBAgTAmlkMRMw
EQYDVQQHEwp0Y3B2cG4uY29tMRMwEQYDVQQKEwp0Y3B2cG4uY29tMRMwEQYDVQQL
Ewp0Y3B2cG4uY29tMRMwEQYDVQQDEwp0Y3B2cG4uY29tMRMwEQYDVQQpEwp0Y3B2
cG4uY29tMSEwHwYJKoZIhvcNAQkBFhJjb250YWN0QHRjcHZwbi5jb22CCQDXNPeo
8cNF4zAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQCX9PfivzYhnvQy
UoNcbaglX4uhB77/OmUkheUa683959L1NQUxNq5xF9adgK1vt6ne32PtChorpHA4
5Q93CX8++A+nfpMUVq2N3usgDg+xMqq9tYNUBgNFWAtmzzuAebgGa0qe7c2d+Qyr
WkUOPo/D8mgSEC97SszK8hEMJox+1sR7Hg57kn4+RnpEEzVhGAKGaMS5aw2RRtDi
hqWapVxuLMxTUqCrMEtyq3BfO4i+YjbC/57TYRDAJq8AlKeDhScIiRaHKSMo8bl5
khmMCQgndaYkqGk80hJTcK5acH39K4l86Lslsj4rbmCTv8hWeQ09HPmreq/3UECC
OYHQg1bq
-----END CERTIFICATE-----
</ca>

<cert>
-----BEGIN CERTIFICATE-----
MIIFQjCCBCqgAwIBAgIBATANBgkqhkiG9w0BAQsFADCBpjELMAkGA1UEBhMCaWQx
CzAJBgNVBAgTAmlkMRMwEQYDVQQHEwp0Y3B2cG4uY29tMRMwEQYDVQQKEwp0Y3B2
cG4uY29tMRMwEQYDVQQLEwp0Y3B2cG4uY29tMRMwEQYDVQQDEwp0Y3B2cG4uY29t
MRMwEQYDVQQpEwp0Y3B2cG4uY29tMSEwHwYJKoZIhvcNAQkBFhJjb250YWN0QHRj
cHZwbi5jb20wHhcNMTUwODA2MTU0ODUxWhcNMjUwODAzMTU0ODUxWjCBpjELMAkG
A1UEBhMCaWQxCzAJBgNVBAgTAmlkMRMwEQYDVQQHEwp0Y3B2cG4uY29tMRMwEQYD
VQQKEwp0Y3B2cG4uY29tMRMwEQYDVQQLEwp0Y3B2cG4uY29tMRMwEQYDVQQDEwp0
Y3B2cG4uY29tMRMwEQYDVQQpEwp0Y3B2cG4uY29tMSEwHwYJKoZIhvcNAQkBFhJj
b250YWN0QHRjcHZwbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
AQDAsP9pWJBf9Jl8A1+rRD1LyaR8J4t8VhzzhVKUpbKLanov1ymfCYH4OevWAW/u
uoKt5hlg55TEPKPTSyOh8VCZ8qraAdBj2Z2OA7dOElMe7U5VCxqJuxya2+PNUlur
H4wQig6dFE/IUEHfw/CbThK/2E/LD/toOHkJw6ggTv+O03Z5xXcvEk09JUws2uHh
7kS4zoZDaacQHsuOfNDCq+EV8v370q3YPLKksr0kXdw9ZaeyerHgghe5FB0a1ye9
tl106ITqRC2HdopxwXqMcBaYcXPqC3+wUh5BGaN1UBHmC5iO0oISovYcYYnOg0fk
b17kjLlozLgOUrzh1BzBbM3FAgMBAAGjggF3MIIBczAJBgNVHRMEAjAAMBEGCWCG
SAGG+EIBAQQEAwIGQDA0BglghkgBhvhCAQ0EJxYlRWFzeS1SU0EgR2VuZXJhdGVk
IFNlcnZlciBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUs9iKiET6VuCa6VCbCFqAdxOD
/6QwgdsGA1UdIwSB0zCB0IAU35JrgvtZSUHOXLfNE7wOtd0DC+mhgaykgakwgaYx
CzAJBgNVBAYTAmlkMQswCQYDVQQIEwJpZDETMBEGA1UEBxMKdGNwdnBuLmNvbTET
MBEGA1UEChMKdGNwdnBuLmNvbTETMBEGA1UECxMKdGNwdnBuLmNvbTETMBEGA1UE
AxMKdGNwdnBuLmNvbTETMBEGA1UEKRMKdGNwdnBuLmNvbTEhMB8GCSqGSIb3DQEJ
ARYSY29udGFjdEB0Y3B2cG4uY29tggkA1zT3qPHDReMwEwYDVR0lBAwwCgYIKwYB
BQUHAwEwCwYDVR0PBAQDAgWgMA0GCSqGSIb3DQEBCwUAA4IBAQCeVdWrfyPqyZad
8P6Kb98iwhvRrgcj102O5Wuhafaazz4QUGGctMR0fjteErc66Ebb/wxaWqI2H34t
o0osERwMeOUEanGdAumL5MdA+NlZOhXGAz8n3LOhEnY5pfGAceVS6OqIELPPMW8W
bN8SY5065rFsiaQHUFl9hPmH76pAa16ubnoLLNoke5dleevIDpbB8wEzZ5fqfBt3
/yzshEoPma5X8nVZLmnIJOmTO/Q08GiCsWY51FI2+B+w4rACtn0ndpCiamYK1DCP
rZuUm+DSFnMqF3L74FTQMZ+LAUN5xGC4j/gtzT70nlW4eB4qWF4XFgLIok7pMt//
3xnxgw7n
-----END CERTIFICATE-----
</cert>

<key>
-----BEGIN PRIVATE KEY-----
MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDAsP9pWJBf9Jl8
A1+rRD1LyaR8J4t8VhzzhVKUpbKLanov1ymfCYH4OevWAW/uuoKt5hlg55TEPKPT
SyOh8VCZ8qraAdBj2Z2OA7dOElMe7U5VCxqJuxya2+PNUlurH4wQig6dFE/IUEHf
w/CbThK/2E/LD/toOHkJw6ggTv+O03Z5xXcvEk09JUws2uHh7kS4zoZDaacQHsuO
fNDCq+EV8v370q3YPLKksr0kXdw9ZaeyerHgghe5FB0a1ye9tl106ITqRC2Hdopx
wXqMcBaYcXPqC3+wUh5BGaN1UBHmC5iO0oISovYcYYnOg0fkb17kjLlozLgOUrzh
1BzBbM3FAgMBAAECggEBAJ6265n8/eZblbSlHr72FTsAmwA8nlLKp0waS7vug5L8
ICqZoknBzhEEvHFoe6b6bzsHpW3BMjM084fNg0sXdllnnTy2c8xa6cCY5Ppkc5ys
wHGiFLjPqy8O4aM0LBdWg8r3vDO8ED8hhDDotp1lgGIOrSLIRj9BDMlzJF+AUlV0
ABd4+5zdbr+1vhEI4NW0EJQlGhamsZxwK80CaQk937NcOhUA00zSESvQFFPCIVlX
qHd5TMgzry1F5yPpS1nYyCwxHLzizeiIJPKHb6LC3sB6c0lr8RPsQcNm1Vlp/DXq
6TSWSiClwdmnhTjlGDFFvT8G6SRXPSDeCUgSxlez610CgYEA53PfpX5GNT7AyqlQ
a7+WojEYSuTsO9T4ULzyr4QjkdoCthYo760BY+sECsLK8x5nG4VHiX8Vxt52yK4R
JzxGDBYFiuURCr+Aa5cqmagZXIktf77GFQAZEFgX7ncr20049xzXKiQFUJywgZ91
OXdw8gVojaVsBYmMhtEOSot+6V8CgYEA1SC5pdyrRzCDRpXxEaAhZjvwa5AI7z/n
OqchxxVOn4RsA1DoiSBvqyLwYhylQPZk/61knEET4eCF8p+BdDXTPCTM3PV2PLhx
qaptqonLVxfnuEN2CwU4MB5psLRVcPZWeBMo5BR/rA47fLjITy+1QI9HQ5QQzfK/
/QrSHIp5x1sCgYEAtCCd4XIQuceIyzBSAkkstjV3LnJS1427YzpptOclt5Dvoz5D
xaPi/RweHTHUOLlkjSqAriVVkVv5Hd06RErISQeqcJotVSwMia8v3D3S3w1zd4PF
LPrShsHIfjII07eZqdesLIO0DzSiuX6cAIlQQUqsP/CJzRVrZFC2ypUdxAkCgYEA
vn87sMbmyQDRtbu797cbY1fb8yiQ89g4g7JzfJDM78PbD7O3xSma5mqaVfeotcIG
UInZTdjVPqYC0/RCL28U2cNC4ZT9FBUAc1iEIVR8zeHuGkMiNYN6z3e/nFPzsr5c
V4M4n3S7ETy/ayF22WCZL5Vha0PjKVH6zOBpIV2cr9UCgYAnA2o8tM6QNZxg3i8R
IC/cVmI7qzcMAlIZxXu8g4SUJGrXeqSR1sN273Nx6uIw83Oj2Cnk+qQn/ElRcpg5
eZui4JAaWSS+AD0acmq2h94Yvd6QinJ1bm5VJi35MHANG7D0/VVxG7icTuRnZevQ
k+iIuH6zfsYWjL2hoSkG1OTvJA==
-----END PRIVATE KEY-----
</key>

我真的不知道脚本有什么问题,我该如何解决?

2 个答案:

答案 0 :(得分:0)

您的文件中有remtote而不是remote:没有符合匹配项(if line.find('remote')==0:永远不会True):servervpn永远不会被定义,因为你甚至没有进入if条件

您必须使代码对错误更加健壮

with open(vpn_account) as fo:
   for line in fo:
     if line.find('remote')==0:
       vpn=line.split()
       if len(vpn) > 2:
          servervpn=vpn[1] + ":" + vpn[2]
          hostvpn=vpn[1]
          portvpn=vpn[2]
          break   # no need to continue reading the file: we found the pattern
   else:
      raise Exception("no remote line found")

else条件与for循环相关。如果没有break,则执行else代码,并引发显式异常。

答案 1 :(得分:0)

根据您的代码逻辑,您逐行读取文本文件并搜索以remote开头的行,如果找到,那么您正在初始化一个局部变量servervpn,该变量将在for循环

请注意servervpn是在if条件内创建的局部变量,因此如果不满足if条件(如第二个文本文件中那样没有行开头)使用remote),然后变量不会被创建,从而导致错误。