系统城装机大师 - 固镇县祥瑞电脑科技销售部宣传站!

当前位置:首页 > 脚本中心 > python > 详细页面

python 工具 字符串转numpy浮点数组的实现

时间:2020-03-14来源:电脑系统城作者:电脑系统城

不同的数字之间使用 空格“ ”,“$”,"*"等隔开,支持带小数点的字符串

NumArray=str2num(LineString,comment='#')

将字符串中的所有非Double类型的字符全部替换成空格

以'#'开头直至行尾的内容被清空

返回一维numpy.array数组

python 工具 字符串转numpy浮点数组的实现


 
  1. import numpy
  2. import scipy
  3. def str2num(LineString,comment='#'):
  4.  
  5. from io import StringIO as StringIO
  6. import re,numpy
  7.  
  8. NumArray=numpy.empty([0],numpy.int16)
  9. NumStr=LineString.strip()
  10. #~ ignore comment string
  11. for cmt in comment:
  12.  
  13. CmtRe=cmt+'.*$'
  14. NumStr=re.sub(CmtRe, " ", NumStr.strip(), count=0, flags=re.IGNORECASE)
  15.  
  16. #~ delete all non-number characters,replaced by blankspace.
  17. NumStr=re.sub('[^0-9.e+-]', " ", NumStr, count=0, flags=re.IGNORECASE)
  18.  
  19. #~ Remove incorrect combining-characters for double type.
  20. NumStr=re.sub('[.e+-](?=\s)', " ", NumStr.strip(), count=0, flags=re.IGNORECASE)
  21. NumStr=re.sub('[.e+-](?=\s)', " ", NumStr.strip(), count=0, flags=re.IGNORECASE)
  22. NumStr=re.sub('[e+-]$', " ", NumStr.strip(), count=0, flags=re.IGNORECASE)
  23. NumStr=re.sub('[e+-]$', " ", NumStr.strip(), count=0, flags=re.IGNORECASE)
  24.  
  25. if len(NumStr.strip())>0:
  26. StrIOds=StringIO(NumStr.strip())
  27. NumArray= numpy.genfromtxt(StrIOds)
  28.  
  29. return NumArray
  30.  
  31.  
  32. if __name__ == "__main__":
  33. str = input("Enter your input: ");
  34. donser=str2num(str)
  35. print(donser)

补充知识:Python 将numpy array由浮点型转换为整型

——使用numpy中的astype()方法可以实现,如:

python 工具 字符串转numpy浮点数组的实现

以上这篇python 工具 字符串转numpy浮点数组的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

分享到:

相关信息

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载