本文整理汇总了Python中mathics.core.expression.Expression.get_string_value方法的典型用法代码示例。如果您正苦于以下问题:Python Expression.get_string_value方法的具体用法?Python Expression.get_string_value怎么用?Python Expression.get_string_value使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类mathics.core.expression.Expression
的用法示例。
在下文中一共展示了Expression.get_string_value方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: apply
# 需要导入模块: from mathics.core.expression import Expression [as 别名]
# 或者: from mathics.core.expression.Expression import get_string_value [as 别名]
def apply(self, filename, evaluation):
'FileFormat[filename_String]'
findfile = Expression('FindFile', filename).evaluate(evaluation)
if findfile == Symbol('$Failed'):
evaluation.message(
'FileFormat', 'nffil', Expression('FileFormat', filename))
return findfile
path = findfile.get_string_value()
if not FileFormat.detector:
loader = magic.MagicLoader()
loader.load()
FileFormat.detector = magic.MagicDetector(loader.mimetypes)
mime = set(FileFormat.detector.match(path))
# If match fails match on extension only
if mime == set([]):
mime, encoding = mimetypes.guess_type(path)
if mime is None:
mime = set([])
else:
mime = set([mime])
result = []
for key in mimetype_dict.keys():
if key in mime:
result.append(mimetype_dict[key])
# the following fixes an extremely annoying behaviour on some (not all)
# installations of Windows, where we end up classifying .csv files als XLS.
if len(result) == 1 and result[0] == 'XLS' and path.lower().endswith('.csv'):
return String('CSV')
if len(result) == 0:
result = 'Binary'
elif len(result) == 1:
result = result[0]
else:
return None
return from_python(result)
示例2: apply
# 需要导入模块: from mathics.core.expression import Expression [as 别名]
# 或者: from mathics.core.expression.Expression import get_string_value [as 别名]
def apply(self, filename, evaluation):
'FileFormat[filename_String]'
findfile = Expression('FindFile', filename).evaluate(evaluation)
if findfile == Symbol('$Failed'):
evaluation.message(
'FileFormat', 'nffil', Expression('FileFormat', filename))
return findfile
path = findfile.get_string_value()
if not FileFormat.detector:
loader = magic.MagicLoader()
loader.load()
FileFormat.detector = magic.MagicDetector(loader.mimetypes)
mime = set(FileFormat.detector.match(path))
# If match fails match on extension only
if mime == set([]):
mime, encoding = mimetypes.guess_type(path)
if mime is None:
mime = set([])
else:
mime = set([mime])
# TODO: Add more file formats
typedict = {
'application/dicom': 'DICOM',
'application/dbase': 'DBF',
'application/dbf': 'DBF',
'application/eps': 'EPS',
'application/fits': 'FITS',
'application/json': 'JSON',
'application/mathematica': 'NB',
'application/mdb': 'MDB',
'application/mbox': 'MBOX',
'application/msaccess': 'MDB',
'application/octet-stream': 'OBJ',
'application/pdf': 'PDF',
'application/pcx': 'PCX',
'application/postscript': 'EPS',
'application/rss+xml': 'RSS',
'application/rtf': 'RTF',
'application/sla': 'STL',
'application/tga': 'TGA',
'application/vnd.google-earth.kml+xml': 'KML',
'application/vnd.ms-excel': 'XLS',
'application/vnd.ms-pki.stl': 'STL',
'application/vnd.oasis.opendocument.spreadsheet': 'ODS',
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet': 'XLSX', # nopep8
'application/vnd.sun.xml.calc': 'SXC',
'application/vnd.msaccess': 'MDB',
'application/vnd.wolfram.cdf': 'CDF',
'application/vnd.wolfram.cdf.text': 'CDF',
'application/vnd.wolfram.mathematica.package': 'Package',
'application/xhtml+xml': 'XHTML',
'application/xml': 'XML',
'application/x-3ds': '3DS',
'application/x-cdf': 'NASACDF',
'application/x-eps': 'EPS',
'application/x-flac': 'FLAC',
'application/x-font-bdf': 'BDF',
'application/x-hdf': 'HDF',
'application/x-msaccess': 'MDB',
'application/x-netcdf': 'NetCDF',
'application/x-shockwave-flash': 'SWF',
'application/x-tex': 'TeX', # Also TeX
'audio/aiff': 'AIFF',
'audio/basic': 'AU', # Also SND
'audio/midi': 'MIDI',
'audio/x-aifc': 'AIFF',
'audio/x-aiff': 'AIFF',
'audio/x-flac': 'FLAC',
'audio/x-wav': 'WAV',
'chemical/seq-na-genbank': 'GenBank',
'chemical/seq-aa-fasta': 'FASTA',
'chemical/seq-na-fasta': 'FASTA',
'chemical/seq-na-fastq': 'FASTQ',
'chemical/seq-na-sff': 'SFF',
'chemical/x-cif': 'CIF',
'chemical/x-daylight-smiles': 'SMILES',
'chemical/x-hin': 'HIN',
'chemical/x-jcamp-dx': 'JCAMP-DX',
'chemical/x-mdl-molfile': 'MOL',
'chemical/x-mdl-sdf': 'SDF',
'chemical/x-mdl-sdfile': 'SDF',
'chemical/x-mdl-tgf': 'TGF',
'chemical/x-mmcif': 'CIF',
'chemical/x-mol2': 'MOL2',
'chemical/x-mopac-input': 'Table',
'chemical/x-pdb': 'PDB',
'chemical/x-xyz': 'XYZ',
'image/bmp': 'BMP',
'image/eps': 'EPS',
'image/fits': 'FITS',
'image/gif': 'GIF',
'image/jp2': 'JPEG2000',
'image/jpeg': 'JPEG',
#.........这里部分代码省略.........