Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python列表子字符串_Python_List_Substring - Fatal编程技术网

python列表子字符串

python列表子字符串,python,list,substring,Python,List,Substring,我试图将newreg.py中的变量(例如state、district、dcode等,这是一个很长的列表,可以从web表单中提取数据)读入insertNew.py 我目前已将整个文件读取到名为“行”的列表中。现在,我如何从列表的“行”中筛选每个变量(如-state、district等,大约50-55个变量。此“列表”还包含html代码,因为我已将整个网页读入其中) 有没有更好、更有效的方法 一旦我能够读取每个变量,我需要连接这些值(转换为字符串)并插入MongoDB 最后,当数据被插入数据库时,“

我试图将newreg.py中的变量(例如state、district、dcode等,这是一个很长的列表,可以从web表单中提取数据)读入insertNew.py

我目前已将整个文件读取到名为“行”的列表中。现在,我如何从列表的“行”中筛选每个变量(如-state、district等,大约50-55个变量。此“列表”还包含html代码,因为我已将整个网页读入其中)

有没有更好、更有效的方法

一旦我能够读取每个变量,我需要连接这些值(转换为字符串)并插入MongoDB

最后,当数据被插入数据库时,“home.py”页面打开

我提供了详细信息,以便能够提供一些解决方案的完整图片。我希望我能保持它的简单和完整

我想循环列表(下面的示例)并过滤掉变量(在“=”符号值之前)。“newreg.py”中包含以下内容:

state=form.getvalue('state','ERROR')
district=form.getvalue('district','ERROR')
dcode=form.getvalue('dcode','ERROR')

我把一个文件/页面读入一个列表

 fp = open('/home/dev/wsgi-scripts/newreg.py','r')
 lines = fp.readlines()
这样我就可以创建字典插入MongoDB.eg

信息={'state':state,'district':district,…} {key:value}[值的意思是---上面列表中的变量]

谢谢

但是当我这样做的时候,我得到了以下错误

print getattr(newreg, 'state')
错误是

>>> print getattr(newreg, 'state')
Traceback (most recent call last):
  File "<stdin>", line 1, in module
AttributeError: 'module' object has no attribute 'state'
上面列表中的处理程序是以下列表中的一个类

#!/usr/bin/env python

import os, sys
import cgi
from pymongo import Connection
import datetime
import time

class Handler:
     def do(self, environ, start_response):
     form = cgi.FieldStorage(fp=environ['wsgi.input'],
                             environ=environ)

     state = form.getvalue('state','<font color="#FF0000">ERROR</font>')
     district = form.getvalue('district','<font color="#FF0000">ERROR</font>')
         dcode = form.getvalue('Dcode','<font color="#FF0000">ERROR</font>')
#/usr/bin/env python
导入操作系统,系统
导入cgi
从pymongo导入连接
导入日期时间
导入时间
类处理程序:
def do(自身、环境、启动响应):
form=cgi.FieldStorage(fp=environ['wsgi.input'],
环境=环境)
state=form.getvalue('state','ERROR')
district=form.getvalue('district','ERROR'))
dcode=form.getvalue('dcode','ERROR')

我假设您希望在运行时将变量从一个Python模块复制到另一个Python模块

import newreg
newreg_vars = dir(newreg)
print newreg_vars
将打印模块“newreg”的所有属性

要从模块中读取变量,请执行以下操作:

print getattr(newreg, 'state')
print getattr(newreg, 'district')
print getattr(newreg, 'dcode')
或者,如果您知道属性的名称:

print newreg.state
print newreg.district
print newreg.dcode
要将属性更改为字符串,请使用列表理解(或生成器):

这将为您节省大量工作,因为您不必使用
re
将“newreg”解析为文本文件


作为旁注:类型转换不是串联(虽然串联可能涉及到其他一些编程语言中的类型转换)。

如果newreg.py定义了有效的Python变量,为什么不直接从newreg导入它们,然后构建字典呢。你能更清楚一点你想要什么吗?示例输入和示例输出。
print getattr(newreg, 'state')
print getattr(newreg, 'district')
print getattr(newreg, 'dcode')
print newreg.state
print newreg.district
print newreg.dcode
newreg_strings = [str(item) for item in newreg_vars]