小编Joh*_*zzz的帖子

从python中的字符串确定"值的类型"

我正在尝试在python中编写一个函数,它将确定字符串中的值的类型; 例如

如果in string为1或0或True或False,则该值为BIT

如果in string为0-9*,则值为INT

如果在字符串中是0-9 + .0-9 +,则该值为float

如果在字符串中是stg更多(文本等)值是文本

到目前为止,我已经喜欢了

def dataType(string):

 odp=''
 patternBIT=re.compile('[01]')
 patternINT=re.compile('[0-9]+')
 patternFLOAT=re.compile('[0-9]+\.[0-9]+')
 patternTEXT=re.compile('[a-zA-Z0-9]+')
 if patternTEXT.match(string):
     odp= "text"
 if patternFLOAT.match(string):
     odp= "FLOAT"
 if patternINT.match(string):
     odp= "INT"
 if patternBIT.match(string):
     odp= "BIT"

 return odp 
Run Code Online (Sandbox Code Playgroud)

但是我在python中使用正则表达式并不是很熟练.你能告诉我,我做错了什么?例如,它不适用于2010-00-10,它应该是Text,但是INT或20.90,它应该是float但是是int

python regex types

3
推荐指数
2
解决办法
3332
查看次数

从python中的列表中删除多个"类"

我有

class rel:
   child=''
   parent=''
listPar=[]
Run Code Online (Sandbox Code Playgroud)

在listPar中,我有一个这些类的列表(对不起,我不确定它是否被称为类,是吗?)所以在listPar中我有例如:room book; 书名 ; 房间书;书名

现在我试图删除所有非独特的出现,所以我想只有

房间预订; listPar中的书名

我们假设,我有以下代码:

variable="Book"
variable2="Author"
toIns=rel()
toIns.parent=variable 
toIns.child=variable2 
listPar.append(toIns) 

toIns2=rel()
toIns2.parent=variable
toIns2.child=variable2 
listPar.append(toIns2) 
Run Code Online (Sandbox Code Playgroud)

现在如何删除所有重复?(结果 - >

for elem in listPar:
    print "child:",elem.child,"parent:",elem.parent

#child:author, parent:book
Run Code Online (Sandbox Code Playgroud)

我尝试了几件事,但似乎没有一件事能够完全发挥作用.你能帮助我吗?

python list duplicates

0
推荐指数
1
解决办法
155
查看次数

标签 统计

python ×2

duplicates ×1

list ×1

regex ×1

types ×1