簡體   English   中英

在Python列表中出現負浮點值的問題

[英]Trouble with negative float values in Python Lists

所以我試圖將浮點數作為Python列表中的元素使用,但我一直收到此錯誤。 我試着使每個值成為一個字符串,然后在調用數組進行打印時將其轉換為浮點數,但這似乎也不起作用

P1 = [45.100000, ‐65.400000]
print(P1[0])
SyntaxError: invalid character in identifier

嘗試#2

P1 = ["45.100000", "‐65.400000"]
print(float(P1[1]))
ValueError: could not convert string to float: '‐65.400000'

我覺得問題與第二個元素前面的負值有關(@索引1)

您使用的連字符存在問題。 如果將連字符剪切並粘貼到列表p1 ,並檢查unicode,它將得到:

>>> ord('‐')
8208

適當的負號或減號應為:

>>> ord('-')
45

根據獲得該列表的方式,您必須弄清楚為什么包含該字符,或者使用正確的Hyphen-Minus重新輸入

我復制了您的代碼並運行了它,而我所要做的就是替換“-”,好像您使用的是錯誤字符。 嘗試這個;

P1 = [45.100000, -65.400000]

這是因為您的-不是減號,而是連字符:

>>> "‐65.400000".encode('utf-8') # copy from your example
b'\xe2\x80\x9065.400000'

>>> "-65.400000".encode('utf-8') # Replace with my minus
b'-65.400000'

\\xe2\\x80\\x90是連字符,請參見此處 :您的連字符為U+2010 ,連字符減號為U+002D

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM