Hướng dẫn how do i convert a string to a negative number in python? - làm cách nào để chuyển đổi chuỗi thành số âm trong python?

Chuyển đổi một chuỗi thành một chiếc phao âm trong Python #

Sử dụng lớp float[] để chuyển đổi chuỗi thành phao âm, ví dụ:

Copied!

my_str = '-3.14' my_float = float[my_str] print[my_float] # 👉️ -3.14
0. Lớp float[] trả về một số điểm nổi được xây dựng từ số được cung cấp hoặc đối số chuỗi.

Copied!

my_str = '-3.14' # ✅ Convert string to a negative float my_float = float[my_str] print[my_float] # 👉️ -3.14 # --------------------------------------- # ✅ Convert a list of strings to a list of negative floats my_list = ['-1.2', '-3.4', '-5.6'] new_list = [float[item] for item in my_list] print[new_list] # 👉️ [-1.2, -3.4, -5.6]

Chúng ta có thể sử dụng lớp float[] để chuyển đổi một chuỗi thành phao âm.

Copied!

my_str = '-3.14' my_float = float[my_str] print[my_float] # 👉️ -3.14

Nếu chuỗi của bạn có thể lưu trữ một số dương và bạn luôn cần có một bản nổi âm, hãy sử dụng hàm

Copied!

my_str = '-3.14' my_float = float[my_str] print[my_float] # 👉️ -3.14
3.

Copied!

my_str = '3.14' my_float = -abs[float[my_str]] print[my_float] # 👉️ -3.14

Hàm ABS trả về giá trị tuyệt đối của một số.

Nói cách khác, nếu số là dương, số được trả về và nếu số là âm, thì phủ định của số được trả về.

Copied!

print[abs[-14.2]] # 👉️ 14.2 print[abs[14.2]] # 👉️ 14.2

Bằng cách tiền tố đầu ra của

Copied!

my_str = '-3.14' my_float = float[my_str] print[my_float] # 👉️ -3.14
3 với dấu trừ, chúng tôi được đảm bảo để có được số âm.

Nếu bạn cần chuyển đổi danh sách các chuỗi thành danh sách các số điểm nổi âm, hãy sử dụng danh sách hiểu.

Copied!

my_list = ['-1.2', '-3.4', '-5.6'] new_list = [float[item] for item in my_list] print[new_list] # 👉️ [-1.2, -3.4, -5.6]

Chúng tôi đã sử dụng một danh sách hiểu để lặp lại trong danh sách các chuỗi.

Danh sách các hệ thống được sử dụng để thực hiện một số hoạt động cho mọi yếu tố hoặc chọn một tập hợp con của các phần tử đáp ứng một điều kiện.

Trên mỗi lần lặp, chúng tôi chuyển chuỗi đến lớp float[] và trả về kết quả.

Danh sách mới chỉ chứa các số điểm nổi âm.

Tôi đã gặp phải vấn đề này trong thuộc tính văn bản matplotlib Xticklabels. Các dấu trừ cho các số âm được mã hóa dưới dạng "trừ":

[ -] là một điểm trừ [Unicode 2212].

Trừ: [& trừ]; A.K.A. [−]; A.K.A. [−];

//en.wikipedia.org/wiki/Wikipedia:Hyphens_and_dashes

Python dường như mã hóa các khoản trừ là 'hyphen-minus', Unicode 002D:

[-] là một dấu gạch nối [bàn phím ASCII, Unicode 002D]

Bạch cầu trừ: [-]; A.K.A. [-];

Đây là một ví dụ:

>> import matplotlib.pyplot as plt
>> import re
>> x = [0,1,2,3,4,5]
>> y = [0,1,2,1,2,1]

>> fig,ax = plt.subplots[1]
>> plt.plot[x,y]

.

Nếu chúng ta cố gắng để có được tại Xticklabels, nếu chúng ta muốn chỉnh sửa chúng theo cách thủ công, chúng ta sẽ sử dụng:

>> l = ax.get_xticklabels[]
>> ticks = [i.get_text[] for i in l]
>> print[ticks]

['−1', '0', '1', '2', '3', '4', '5', '6']

>> ord[ticks[0]]

8722

Cố gắng chuyển đổi nó thành một số nguyên:

>> l = ax.get_xticklabels[]
>> ticks = [int[i.get_text[]] for i in l]

ValueError: invalid literal for int[] with base 10: '−1'

Đây là lỗi tương tự như trong câu hỏi, điều này rất khó để người khác tái tạo. Để sửa nó, hãy sử dụng các biểu thức thông thường:

ticks = [int[re.sub[u"\u2212", "-", i.get_text[]]] for i in l]
print[ticks]
print[ticks[0] - 1]

[-1, 0, 1, 2, 3, 4, 5, 6]
-2

>> ord[ticks[0]]

45

Một chiếc phao có thể âm trong Python?

Trong Python, số điểm nổi [FLOAT] là số thực dương và âm với phần phân số được ký hiệu là ký hiệu thập phân.hoặc ký hiệu khoa học E hoặc E, ví dụ:1234,56, 3.142, -1,55, 0,23.floating point numbers [float] are positive and negative real numbers with a fractional part denoted by the decimal symbol . or the scientific notation E or e , e.g. 1234.56, 3.142, -1.55, 0.23.

INT trong Python có thể tiêu cực không?

Int, hoặc số nguyên, là một số nguyên, dương hoặc âm, không có số thập phân, có độ dài không giới hạn., without decimals, of unlimited length.

Số âm được thể hiện như thế nào trong Python?

Các số âm được viết với một số hàng đầu thay vì số 0 hàng đầu.Vì vậy, nếu bạn chỉ sử dụng 8 bit cho các số bổ sung twos của mình, thì bạn sẽ xử lý các mẫu từ "00000000" đến "01111111" như toàn bộ số từ 0 đến 127 và dự trữ "1xxxxxxxx" để viết số âm.written with a leading one instead of a leading zero. So if you are using only 8 bits for your twos-complement numbers, then you treat patterns from "00000000" to "01111111" as the whole numbers from 0 to 127, and reserve "1xxxxxxx" for writing negative numbers.

ATOI có hoạt động với số âm không?

Một dấu hiệu cộng hàng đầu là cho phép;Một dấu trừ làm cho giá trị trả về âm.a minus sign makes the return value negative.

Bài Viết Liên Quan

Chủ Đề