1

こんにちは、私はこの方法を持っています。ファイル名から 3.34 と 9.1 の値を取得するにはどうすればよいですか? 小数値を抽出できないようです。助けてください!前もって感謝します。たとえば、私の FileName が呼び出されます。123 3.34 9.1 IP

デスクトップから抽出されたファイル FILENAME: 123 3.34 9.1 IP

def extractFilename(FileName):
    Text = string.split(FileName, " ")
    Name = stripText[0]
    Thickness = stripText[1]
    SurfaceArea = stripText[2]
    Type = stripText[len(stripText)-1]
    return (Name,Thickness,SurfaceArea, Type)
    pass
4

1 に答える 1

2

次のようにできます。

    import math
    def is_number(s):
       try:
           float(s)
           return True
       except ValueError:
           return False
    filename = "123 3.34 9.91 p"
    val = filename.split(" ")
    for items in val:
       if is_number(items):
           if float(items) != math.floor(float(items)):
               print items

作業:- 最初にファイル名を分割します。各要素を反復処理した後、アイテムが文字列かどうかをチェックします。文字列でない場合は、整数部分が数値と等しいかどうかをチェックします。等しい場合は整数、それ以外の場合は float です。

于 2013-10-02T04:44:11.650 に答える