2010-08-03 5 views
1

Я создал функцию для чтения в csv-файле, а затем написал некоторые данные из файла csv в другой файл. Я должен был манипулировать некоторыми данными в исходном файле csv, прежде чем писать. Мне, вероятно, придется много манипулировать в течение следующих двух месяцев, поэтому я написал еще одну функцию, чтобы просто сделать эту манипуляцию, но мне трудно вызвать функцию в моей другой функции.Вызов функций в другой функции

это функция, которую я пытаюсь позвонить в:

import sys 
import math 

def convLatLon(measurement): # should be in '##.####' format  
    tpoint=float(measurement)  
    point_deg=math.floor(measurement) # find the degree for lat and lon 
    dpoint=tpoint-point_deg #subtract the lat value from just the degs to get the     decimal fraction 
    pointmin=dpoint * 60 # find the degree mins 

    npoint= str(point_deg) + str(pointmin)   
    print(npoint) 

Как вызвать в этой функции в другой функции? Они в настоящее время находятся в одном каталоге. Я привык к Matlab и думал, что это будет простой вызов в команде, но я не могу понять это. Любая помощь будет значительно исправлена.

Шей

+1

Я думаю, что вы имеете в виду передать '' tpoint' к Math.floor() ' –

ответ

3

Вы можете импортировать файл (то же, что и вы импортировали sys и math). Если функция находится в файле с именем util.py:

import util 
util.convLatLon(37.76) 

Если файл находится в другой директории, каталог должен быть в вашем PYTHONPATH.

0

Похоже, что вам необходимо импортировать файл.

Если функция определена в файле myfile.py и вы wan`t использовать его из myotherfile.py, вы должны импортировать myfile.py, как это:

import myfile

, а затем вы можете использовать функцию следующим образом:

result = myfile.myfunc(myparms)

Если вы хотите, чтобы избавиться от приставки Myfile, импортировать его как это:

from myfile import myfunc

0

Если эта функция сохраняется в файле с именем myconv.py

from myconv.py import convLatLon 
convLatLon("12.3456") 
Смежные вопросы