繁体   English   中英

用python将字符串转换为整数

[英]converting a string to integer with python

请看这里

我正在从带有时间戳的Excel工作表值(如1333263660 )中获取值,因此,如果我手动将此数字输入此代码中:

     time1=time.strftime('%m/%d/%Y/ %H:%M:%S',time.gmtime(a))
     time1=time1.split('/')
     print(time1)

结果将得到['04', '01', '2012', ' 07:01:00'] ,但是由于我必须使用以下代码从excel工作表中获取这些值:

  filecsv=open('AMPdsR1_1min_A.csv',"r")
  readlines = filecsv.readlines()
  for line in readlines:
     Type = line
     ttype=Type.split(',')
     b=ttype[0]
     print(b)

通过打印b ,我将得到以下信息:

1364734320
1364734380
1364734440.....

但是我必须将它们转换为整数,因此我可以将第一个代码应用于它们以将它们转换为真实日期。

但! 当我做:

  b=b.replace(" ","") ##hoping to get the integer form of 1333263660
  c=int(b) 

弹出以下错误:

ValueError:invalid literal for int() with base 10: 'TimeStamp'

...如果我尝试:

  b=b.replace(" ","")
  c=float(b)

我收到错误: ValueError: could not convert string to float: 'TimeStamp'

PS:如果我要这么做的话...

c=type(b)
print(c)

我得到: >>>"class 'str'" as a type of b

有人可以帮我解决这个问题吗? 谢谢!

我同意@IljaEverilä的观点,为什么不能转换为int或float的原因是转换“ TimeStamp”中包含第一列的标题,因此可以使用一个简单的if语句进行操作:

filecsv=open('AMPdsR1_1min_A.csv',"r")
readlines = filecsv.readlines()
for line in deadlines:
 if "TimeStamp" not in line:
  Type = line
  ttype=Type.split(',')
  b=ttype[0]
  print(b)

试试这个,让我知道,谢谢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM