Erhalten Sie "newline inside string", während Sie die csv-Datei in Python lesen?

Ich habe diese utils.py-Datei in Django Architecture:

def range_data(ip):
    r = []
    f = open(os.path.join(settings.PROJECT_ROOT, 'static', 'csv ', 
                          'GeoIPCountryWhois.csv'))
    for num,row in enumerate(csv.reader(f)):
        if row[0] <= ip <= row[1]:
            r.append([r[4]])
            return r
        else:
            continue
    return r

Hier ist der IP-Parameter nur die IPv4-Adresse, ich verwende Open Source MAXMINDGeoIPCountrywhois.csv Datei.

Einige Ausgangsinhalte vonGeopIOCountrywhois.csv:

"1.0.0.0","1.0.0.255","16777216","16777471","AU","Australia"
"1.0.1.0","1.0.3.255","16777472","16778239","CN","China"
"1.0.4.0","1.0.7.255","16778240","16779263","AU","Australia"
"1.0.8.0","1.0.15.255","16779264","16781311","CN","China"
"1.0.16.0","1.0.31.255","16781312","16785407","JP","Japan"
"1.0.32.0","1.0.63.255","16785408","16793599","CN","China"
"1.0.64.0","1.0.127.255","16793600","16809983","JP","Japan"
"1.0.128.0","1.0.255.255","16809984","16842751","TH","Thailand"

Ich habe auch über das Thema gelesen, fand aber nicht so viel verständlich. Würden Sie mir bitte helfen, diesen Fehler zu beheben?

Gemäß meiner Methode in Utils überprüfe ich den Ländernamen des Paasing-ParametersIP Adresse an die Methode.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage