Tôi đang cố gắng chuyển đổi một tập hợp các chuỗi từ tệp TXT thành INT trong danh sách. Tôi đã có thể tìm thấy một đoạn mã hay trả về từng dòng và sau đó tôi đã tiến hành thử và chuyển đổi nó thành INT. Vấn đề là các con số nằm trong ký hiệu khoa học và tôi gặp lỗi này: valueError: không hợp lệ cho int [] với cơ sở 10: '3.404788E-001'.
Đây là mã tôi đã làm rối tung xung quanh với
data = []
rawText = open ["data.txt","r"]
for line in rawText.readlines[]:
for i in line.split[]:
data.append[int[i]]
print data[1]
rawText.close[]
hỏi ngày 18 tháng 2 năm 2012 lúc 4:20Feb 18, 2012 at 4:20
1
Sử dụng
0.01
1e-08
4 hoặc 0.01
1e-08
5 cho các số điểm nổi, tùy thuộc vào mức độ quan trọng của việc duy trì độ chính xác đối với bạn. 0.01
1e-08
6 sẽ lưu trữ các số trong điểm nổi của IEEE chính xác bằng máy, trong khi 0.01
1e-08
7 sẽ duy trì độ chính xác đầy đủ, với chi phí chậm hơn. Ngoài ra, bạn có thể lặp lại một tệp mở, bạn không cần phải sử dụng 0.01
1e-08
8. Và một danh sách hiểu một danh sách có thể làm mọi thứ bạn cần: 0.01
1e-08
6 will store the numbers in machine-precision IEEE floating point, while 0.01
1e-08
7
will maintain full accuracy, at the cost of being slower.Also, you can iterate over an open file, you don't need to use
0.01
1e-08
8.And a single list comprehension can do everything you need:
data = [float[number]
for line in open['data.txt', 'r']
for number in line.split[]]
Nếu bạn thực sự chỉ cần số nguyên, bạn có thể sử dụng
0.01
1e-08
9Đã trả lời ngày 18 tháng 2 năm 2012 lúc 4:21Feb 18, 2012 at 4:21
Tzamantzamantzaman
45,7K11 Huy hiệu vàng89 Huy hiệu bạc113 Huy hiệu đồng11 gold badges89 silver badges113 bronze badges
Chuỗi của bạn trông giống như
0.01
1e-08
6, vì vậy hãy chuyển đổi nó thành 0.01
1e-08
6 trước.Đã trả lời ngày 18 tháng 2 năm 2012 lúc 4:22Feb 18, 2012 at 4:22
Phương thức nào chuyển đổi một chuỗi thành int?
Sử dụng phương thức Parse Phương thức Parse [] để chuyển đổi độ dài từ chuỗi thành int [tương đương số nguyên có chữ ký 32 bit].
- Ký hiệu khoa học Python & nbsp; là một cách viết một số lượng lớn hoặc một số lượng nhỏ về sức mạnh của 10. để viết một số trong & nbsp; ký hiệu khoa học & nbsp; số lượng từ 1 đến 10 được nhân với công suất 10 [a * 10^ b]. Phương pháp này có thể được sử dụng để khởi tạo một số ở một định dạng nhỏ.
- Ví dụ: bạn muốn khởi tạo một biến thành 0,0000008, bạn có thể viết trực tiếp 8.0E-10. Bằng cách này, Python có thể nhận ra con số này là 8.0*10^[-10].
- Các loại số trong Python
- Khi phao được thể hiện trong ký hiệu khoa học bằng cách sao chép?
- Cú pháp của ký hiệu khoa học
- Các thông số của ký hiệu khoa học trong Python
- Cách in một số trong ký hiệu khoa học trong Python
- Cách đàn áp các ký hiệu khoa học trong Python
- Ví dụ để đàn áp ký hiệu khoa học?
- Cách chuyển đổi ký hiệu khoa học thành số dấu phẩy động hoặc số thập phân
- Chuyển đổi ký hiệu khoa học thành ma trận
- Cách chuyển đổi số nguyên thành ký hiệu khoa học Python
- Ký hiệu khoa học python trong gấu trúc
- Python ký hiệu khoa học trong máy tính xách tay Jupyter
- Âm mưu matplotlib python chuyển đổi thành ký hiệu khoa học
- Ký hiệu khoa học regex python
- Phải đọc
- Sự kết luận
Các loại số trong Python
Có 4 loại số trong lập trình Python:
- Số nguyên [int]
- Điểm nổi/ Số thực [Float]
- Boolean [Bool]
- Một số phức [J]
Trong Python, chúng ta có thể đại diện cho các số điểm nổi với sự trợ giúp của ký hiệu khoa học. Ký hiệu khoa học rất tiện dụng khi chúng ta cần viết số rất nhỏ hoặc lớn.
Python có một cú pháp xác định để đại diện cho một ký hiệu khoa học.
Vì vậy, chúng ta hãy lấy một số 0,000001234 sau đó để thể hiện nó ở dạng khoa học mà chúng ta viết là 1.234 x 10^-6. Để viết nó dưới dạng khoa học Python, chúng tôi viết nó là 1.234E-6. Ở đây chữ E là biểu tượng số mũ. Chúng ta có thể viết E hoặc E, vì nó không nhạy cảm với trường hợp.0.000001234 then to represent it in a scientific form we write it as 1.234 X 10^-6. For writing it in python’s scientific form we write it as 1.234E-6. Here the letter E is the exponent symbol. We can write e or E, as it is not case sensitive.
Khi phao được thể hiện trong ký hiệu khoa học bằng cách sao chép?
Phao luôn được lưu trữ trong các giá trị số. Các giá trị không bao giờ được lưu trữ dưới dạng ký hiệu khoa học của người Viking. Chỉ trong khi in phao [tùy thuộc vào điều kiện], nó được thể hiện dưới dạng ký hiệu khoa học [giá trị thực tế luôn vẫn còn trong giá trị nổi].The values are never stored in the form of “scientific notation”. Only while printing the floats [depending on the conditions], it is shown in the form of scientific notation [the actual value always remains in float value].
Nếu số lượng lớn hơn 1E-4 hoặc nhỏ hơn 1E15, nó được biểu diễn dưới dạng thập phân bằng cách sao lại. Nếu không, nó đại diện ở dạng khoa học. Ví dụ sau đây sẽ giúp bạn hiểu rõ hơn -
Mã số -
x = 0.01 print[type[x], x] y = 0.00000001 print[type[y], y]
Đầu ra -
0.01
1e-08
Cả hai biến thực sự là phao, nhưng các lực thay thế thay đổi y được in dưới dạng ký hiệu khoa học.
Cú pháp của ký hiệu khoa học
AE^B or Ae^B
Các thông số của ký hiệu khoa học trong Python
A là một số lớn hơn 0 và nhỏ hơn 10, và B là bất kỳ số nguyên nào.
Cách in một số trong ký hiệu khoa học trong Python
Để in một số trong ký hiệu khoa học trong Python, chúng tôi sử dụng str.format [] để in một số ở dạng khoa học của nó trong Python.
Ví dụ 1: để in hoặc định dạng ký hiệu khoa học trong Python
Để in 0,0000001234, chúng tôi viết mã:
scientific_notation="{:e}".format[0.000001234] print[scientific_notification]
Output:
1.234e-06
Ở đây {: e} trong chuỗi là điểm chính để thể hiện giá trị nổi trong ký hiệu khoa học trong khi in số.
Ví dụ 2: In ký hiệu khoa học bằng Python
Để in 12340000 trong ký hiệu khoa học:
scientific_notation="{:e}".format[12340000] print[scientific_notification]
Output:
1.234000e+07
Ví dụ này cho thấy cách in các giá trị số nguyên vào các ký hiệu khoa học.
Ví dụ 3: để loại bỏ số không sau thập phân
Để xóa 0s sau khi sử dụng hình thức theo hình thức sau:
scientific_notation=”{:.2e}”.format[12340000] print[scientific_notation]
Output:
data = [float[number]
for line in open['data.txt', 'r']
for number in line.split[]]
0Cách đàn áp các ký hiệu khoa học trong Python
Python tự động đại diện cho các giá trị điểm nổi nhỏ trong ký hiệu khoa học. Bằng cách đàn áp ký hiệu khoa học, về cơ bản, chúng ta đại diện cho những con số này ở định dạng thập phân đầy đủ, điều đó cũng có nghĩa là nó sẽ mất nhiều không gian hơn để lưu trữ giá trị. Ví dụ: hãy để định dạng khoa học của một số là 1,23E+5 vì vậy định dạng thập phân của nó sẽ là 123000, điều đó có nghĩa là bây giờ nó sẽ có 6 địa điểm được biểu diễn.1.23e+5 so its decimal format will be 123000 which means it will now be taking 6 places to be represented.
Ví dụ để đàn áp ký hiệu khoa học?
Để làm như vậy, chúng tôi sử dụng cú pháp fv {num: .nf} để biểu diễn số ’num, ở định dạng thập phân cho đến n số thập phân.
Ví dụ 1: Suppressing Ghi ký khoa học
Output:
data = [float[number]
for line in open['data.txt', 'r']
for number in line.split[]]
1Ví dụ 2: Noation khoa học cho phép
data = [float[number]
for line in open['data.txt', 'r']
for number in line.split[]]
2Output:
data = [float[number]
for line in open['data.txt', 'r']
for number in line.split[]]
3Theo một cách khác để đàn áp ký hiệu khoa học, chúng tôi sử dụng cú pháp
data = [float[number]
for line in open['data.txt', 'r']
for number in line.split[]]
4Ví dụ 1: 1:
Output:
data = [float[number]
for line in open['data.txt', 'r']
for number in line.split[]]
5Ví dụ 2:
data = [float[number]
for line in open['data.txt', 'r']
for number in line.split[]]
6Output:
data = [float[number]
for line in open['data.txt', 'r']
for number in line.split[]]
7Cách chuyển đổi ký hiệu khoa học thành số dấu phẩy động hoặc số thập phân
Trong phần trước, chúng tôi đã kiểm tra xem làm thế nào chúng ta có thể sử dụng thập phân cho ký hiệu khoa học. Trong phần này, chúng tôi sẽ thấy mặt trái của quá trình này.
Để chuyển đổi ký hiệu khoa học thành số điểm nổi trong Python, số float có thể được làm tròn với định dạng và sau đó có thể được sử dụng trên một chuỗi để trả về giá trị phao tròn.
Syntax:
data = [float[number]
for line in open['data.txt', 'r']
for number in line.split[]]
8Hoặc
data = [float[number]
for line in open['data.txt', 'r']
for number in line.split[]]
9Ví dụ để chuyển đổi ký hiệu khoa học thành số điểm nổi:
x = 0.01 print[type[x], x] y = 0.00000001 print[type[y], y]0
Output:
x = 0.01 print[type[x], x] y = 0.00000001 print[type[y], y]1
Ví dụ 2:
x = 0.01 print[type[x], x] y = 0.00000001 print[type[y], y]2
Output:
x = 0.01 print[type[x], x] y = 0.00000001 print[type[y], y]3
Cách chuyển đổi ký hiệu khoa học thành số dấu phẩy động hoặc số thập phân
Trong phần trước, chúng tôi đã kiểm tra xem làm thế nào chúng ta có thể sử dụng thập phân cho ký hiệu khoa học. Trong phần này, chúng tôi sẽ thấy mặt trái của quá trình này.
x = 0.01 print[type[x], x] y = 0.00000001 print[type[y], y]4
Hoặc
x = 0.01 print[type[x], x] y = 0.00000001 print[type[y], y]5
Ví dụ để chuyển đổi ký hiệu khoa học thành số điểm nổi:
Chuyển đổi ký hiệu khoa học thành ma trận
x = 0.01 print[type[x], x] y = 0.00000001 print[type[y], y]6
Để chuyển đổi một ký hiệu khoa học thành ma trận, chúng ta có thể sử dụng cú pháp đã cho:
Cách xóa các ký hiệu khoa học khỏi đồ thị
Mã số
Đầu ra
x = 0.01 print[type[x], x] y = 0.00000001 print[type[y], y]7
Cách chuyển đổi số nguyên thành ký hiệu khoa học Python
Số nguyên có thể được chuyển đổi thành ký hiệu khoa học với sự trợ giúp của cờ {: e} với sự trợ giúp của phương thức định dạng của chuỗi. {: e} chuyển đổi một số cả số nguyên hoặc float thành các ký hiệu khoa học. Hơn nữa, bạn có thể sử dụng định dạng {: .ne} để giới hạn số chữ số thập phân trong ký hiệu khoa học.
Mã số
x = 0.01 print[type[x], x] y = 0.00000001 print[type[y], y]8
Đầu ra
x = 0.01 print[type[x], x] y = 0.00000001 print[type[y], y]9
x = 0.01
print[type[x], x]
y = 0.00000001
print[type[y], y]
7
Cách chuyển đổi số nguyên thành ký hiệu khoa học Python
Số nguyên có thể được chuyển đổi thành ký hiệu khoa học với sự trợ giúp của cờ {: e} với sự trợ giúp của phương thức định dạng của chuỗi. {: e} chuyển đổi một số cả số nguyên hoặc float thành các ký hiệu khoa học. Hơn nữa, bạn có thể sử dụng định dạng {: .ne} để giới hạn số chữ số thập phân trong ký hiệu khoa học.
Giải trình
Trong trường hợp đầu tiên, ký hiệu khoa học sử dụng giới hạn mặc định của số thập phân trong việc chuyển đổi số nguyên.
Trong trường hợp thứ hai, ký hiệu khoa học chỉ giới hạn số thập phân chỉ là 3 chữ số.
Ký hiệu khoa học python trong gấu trúc
0.01
1e-08
0 x = 0.01
print[type[x], x]
y = 0.00000001
print[type[y], y]
7
Cách chuyển đổi số nguyên thành ký hiệu khoa học Python
Số nguyên có thể được chuyển đổi thành ký hiệu khoa học với sự trợ giúp của cờ {: e} với sự trợ giúp của phương thức định dạng của chuỗi. {: e} chuyển đổi một số cả số nguyên hoặc float thành các ký hiệu khoa học. Hơn nữa, bạn có thể sử dụng định dạng {: .ne} để giới hạn số chữ số thập phân trong ký hiệu khoa học.np.random syntax used to generate the numbers. In order to remove the scientific notation while using python pandas, any of the following syntax can be used:
- df.round[n]
- Giải trình
- Trong trường hợp đầu tiên, ký hiệu khoa học sử dụng giới hạn mặc định của số thập phân trong việc chuyển đổi số nguyên.
- Trong trường hợp thứ hai, ký hiệu khoa học chỉ giới hạn số thập phân chỉ là 3 chữ số.
Ký hiệu khoa học python trong gấu trúc
Pandas là một phần mềm được viết bằng Python được sử dụng để thao tác và phân tích dữ liệu. Nó sử dụng các cấu trúc dữ liệu để thao tác các bảng số.
Cú pháp
Để tạo khung dữ liệu trong gấu trúc với số loại float, hãy sử dụng cú pháp sau:
Bằng cách sử dụng cú pháp trên, chúng ta có thể tạo một cột chứa các số trong ký hiệu khoa học.
Logic cơ bản đằng sau tất cả những điều này xảy ra là việc sử dụng cú pháp NP.Random được sử dụng để tạo ra các số. Để loại bỏ ký hiệu khoa học trong khi sử dụng Python Pandas, bất kỳ cú pháp nào sau đây đều có thể được sử dụng:
DF.Apply [Lambda X: ‘ % .nf, % x, trục = 1]
Mã số
0.01
1e-08
1Đầu ra
x = 0.01 print[type[x], x] y = 0.00000001 print[type[y], y]7
Cách chuyển đổi số nguyên thành ký hiệu khoa học Python
Mã số
0.01
1e-08
2Đầu ra
0.01
1e-08
3 x = 0.01
print[type[x], x]
y = 0.00000001
print[type[y], y]
7
Cách chuyển đổi số nguyên thành ký hiệu khoa học Python
- Số nguyên có thể được chuyển đổi thành ký hiệu khoa học với sự trợ giúp của cờ {: e} với sự trợ giúp của phương thức định dạng của chuỗi. {: e} chuyển đổi một số cả số nguyên hoặc float thành các ký hiệu khoa học. Hơn nữa, bạn có thể sử dụng định dạng {: .ne} để giới hạn số chữ số thập phân trong ký hiệu khoa học. – Token Matches for either – or +.
- Giải trình – Matches the previous token between zero and one time.
- Trong trường hợp đầu tiên, ký hiệu khoa học sử dụng giới hạn mặc định của số thập phân trong việc chuyển đổi số nguyên. – Token Matches to a digit
- Trong trường hợp thứ hai, ký hiệu khoa học chỉ giới hạn số thập phân chỉ là 3 chữ số.. – Matches for . literally.
- Ký hiệu khoa học python trong gấu trúc – Token matches for either E or e.
Pandas là một phần mềm được viết bằng Python được sử dụng để thao tác và phân tích dữ liệu. Nó sử dụng các cấu trúc dữ liệu để thao tác các bảng số.
- Cú pháp
- Để tạo khung dữ liệu trong gấu trúc với số loại float, hãy sử dụng cú pháp sau:
- Bằng cách sử dụng cú pháp trên, chúng ta có thể tạo một cột chứa các số trong ký hiệu khoa học.
- Logic cơ bản đằng sau tất cả những điều này xảy ra là việc sử dụng cú pháp NP.Random được sử dụng để tạo ra các số. Để loại bỏ ký hiệu khoa học trong khi sử dụng Python Pandas, bất kỳ cú pháp nào sau đây đều có thể được sử dụng:
DF.Apply [Lambda X: ‘ % .nf, % x, trục = 1]
pd.set_option [‘display.float_format, Lambda x:‘ % .nf, % x]
pd.options.display.float_format = ‘{: .nf}.
Trong đó n biểu thị số lượng các yếu tố.
Python ký hiệu khoa học trong máy tính xách tay Jupyter