求助,我编了如下python脚本,为什么老是没结果呢?
-
- 帖子: 91
- 注册时间: 2013-01-23 14:27
- 系统: ubuntu 12.04
求助,我编了如下python脚本,为什么老是没结果呢?
#!/bin/env python
f = open("0.ASC")
for line in f.readlines():
columns = line.strip().split()
num1 = float(columns[1])
num2 = float(columns[2])
if ((num1-6)**2+(num2-18)**2)**(0.5)<0.5:
print line,
f.close()
----------------------------------------
下面是0.ASC的内容
1 6.1 18.4
2 7.1 19.4
谢谢!
f = open("0.ASC")
for line in f.readlines():
columns = line.strip().split()
num1 = float(columns[1])
num2 = float(columns[2])
if ((num1-6)**2+(num2-18)**2)**(0.5)<0.5:
print line,
f.close()
----------------------------------------
下面是0.ASC的内容
1 6.1 18.4
2 7.1 19.4
谢谢!
- oneleaf
- 论坛管理员
- 帖子: 10455
- 注册时间: 2005-03-27 0:06
- 系统: Ubuntu 12.04
Re: 求助,我编了如下python脚本,为什么老是没结果呢?
代码无误,需要去检查文件。
代码: 全选
>>> a=[[1,6.1,18.4],[2,7.1,19.4]]
>>> for columns in a:
... num1 = float(columns[1])
... num2 = float(columns[2])
... if ((num1-6)**2+(num2-18)**2)**(0.5)<0.5:
... print columns
...
[1, 6.0999999999999996, 18.399999999999999]
-
- 帖子: 91
- 注册时间: 2013-01-23 14:27
- 系统: ubuntu 12.04
Re: 求助,我编了如下python脚本,为什么老是没结果呢?
文件很简单,也没问题啊?oneleaf 写了:代码无误,需要去检查文件。代码: 全选
>>> a=[[1,6.1,18.4],[2,7.1,19.4]] >>> for columns in a: ... num1 = float(columns[1]) ... num2 = float(columns[2]) ... if ((num1-6)**2+(num2-18)**2)**(0.5)<0.5: ... print columns ... [1, 6.0999999999999996, 18.399999999999999]
- 附件
-
- 0.txt
- (24 Bytes) 已下载 66 次
-
- 帖子: 91
- 注册时间: 2013-01-23 14:27
- 系统: ubuntu 12.04
Re: 求助,我编了如下python脚本,为什么老是没结果呢?
大家下载下来后,把我写的脚本中改为“1.txt",用我的脚本看能运行吗?帮忙找错!
-
- 帖子: 1453
- 注册时间: 2008-05-24 8:30
Re: 求助,我编了如下python脚本,为什么老是没结果呢?
没有问题,运行结果:
代码: 全选
1 6.1 18.4
- icejoywoo
- 帖子: 16
- 注册时间: 2009-06-01 21:21
Re: 求助,我编了如下python脚本,为什么老是没结果呢?
代码: 全选
#!/bin/env python
import math
f = open("0.txt")
for line in f.readlines():
columns = line.strip().split()
num1 = float(columns[1])
num2 = float(columns[2])
if math.sqrt((num1-6)**2+(num2-18)**2) < 0.5:
print line,
f.close()
输入文本数据如果有格式问题, catch异常进行处理吧
误差可以考虑使用这种方法
代码: 全选
#!/bin/env python
import math
f = open("0.txt")
for line in f.readlines():
columns = line.strip().split()
num1 = float(columns[1])
num2 = float(columns[2])
if math.sqrt(((num1-6)**2+(num2-18)**2) * 10000) < 0.5 * 100:
print line,
f.close()
chrome+Proxy Switchy!+SogouProxy,突破教育网的网络限制
-
- 帖子: 91
- 注册时间: 2013-01-23 14:27
- 系统: ubuntu 12.04
Re: 求助,我编了如下python脚本,为什么老是没结果呢?
谢啦!icejoywoo 写了:浮点数计算会出现误差问题, 看这种误差是否满足你的要求吧代码: 全选
#!/bin/env python import math f = open("0.txt") for line in f.readlines(): columns = line.strip().split() num1 = float(columns[1]) num2 = float(columns[2]) if math.sqrt((num1-6)**2+(num2-18)**2) < 0.5: print line, f.close()
输入文本数据如果有格式问题, catch异常进行处理吧
误差可以考虑使用这种方法代码: 全选
#!/bin/env python import math f = open("0.txt") for line in f.readlines(): columns = line.strip().split() num1 = float(columns[1]) num2 = float(columns[2]) if math.sqrt(((num1-6)**2+(num2-18)**2) * 10000) < 0.5 * 100: print line, f.close()
还有一个问题,就是加入1.txt的头几行想加以#开头的标注,这时python就人不出来标注,就会出现错误。该怎么办呢?谢谢
- icejoywoo
- 帖子: 16
- 注册时间: 2009-06-01 21:21
Re: 求助,我编了如下python脚本,为什么老是没结果呢?
一个问题开了两个贴, 只知道提问题, 自己都不去看看
代码: 全选
#!/bin/env python
# encoding: utf-8
# 这是个测试注释
print "囗囗囗囗 U, dude! Son of 囗囗囗囗囗!"
- 附件
-
- hello.py
- 示例程序
- (89 Bytes) 已下载 65 次
chrome+Proxy Switchy!+SogouProxy,突破教育网的网络限制
-
- 帖子: 91
- 注册时间: 2013-01-23 14:27
- 系统: ubuntu 12.04
Re: 求助,我编了如下python脚本,为什么老是没结果呢?
icejoywoo 写了:一个问题开了两个贴, 只知道提问题, 自己都不去看看代码: 全选
#!/bin/env python # encoding: utf-8 # 这是个测试注释 print "囗囗囗囗 U, dude! Son of 囗囗囗囗囗!"
好像你理解错了。我的问题是编了一个.py,去处理.txt中的数据,但是由于.txt中有#开头的批注,阻碍了.py的运行,在不删除批注的情况下该如何使.py忽略.txt中的批注呢?谢谢
-
- 帖子: 1453
- 注册时间: 2008-05-24 8:30
Re: 求助,我编了如下python脚本,为什么老是没结果呢?
代码: 全选
for line in f:
line=line.strip()
if not line.startswith('#'):
columns = line.strip().split()
.....
- 枫叶饭团
- 帖子: 14683
- 注册时间: 2010-06-16 1:05
- 系统: Mac OS X
- 来自: Tencent
- 联系:
Re: 求助,我编了如下python脚本,为什么老是没结果呢?
我了个去,我的理解有问题。。。
我还以为楼主说是的文件里有#会影响python处理问题呢。。。。。。
把备注删掉不就行了= =
我还以为楼主说是的文件里有#会影响python处理问题呢。。。。。。
把备注删掉不就行了= =