Điều gì xảy ra khi bạn chuyển đổi chuỗi thành int Python?

Python cho phép bạn chuyển đổi chuỗi, số nguyên và số float thay thế cho nhau theo một số cách khác nhau. Cách đơn giản nhất để thực hiện việc này là sử dụng các hàm cơ bản

>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
6,
>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
7 và
>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
8. Ngoài ra, còn có một số cách khác, chẳng hạn như hàm
>>> x = "23.4"
>>> z = int(x)
Traceback (most recent call last):
  File "", line 1, in 
ValueError: invalid literal for int() with base 10: '23.4'
9. Chỉ cần lưu ý rằng các hàm
>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
7,
>>> integerFirst = 23
>>> floatFirst = 23.23
>>> complextFirst = 1 + 23j
8 và
>>> x = "23a"
>>> z = int(x)
Traceback (most recent call last):
  File "", line 1, in 
ValueError: invalid literal for int() with base 10: '23a'
6 có những hạn chế và có thể đưa ra ngoại lệ nếu chuỗi đầu vào không được định dạng chính xác như chúng mong đợi

Trong Python, bạn có thể chuyển đổi một chuỗi

# print(int('1.23'))
# ValueError: invalid literal for int() with base 10: '1.23'

# print(int('10,000'))
# ValueError: invalid literal for int() with base 10: '10,000'
2 thành một số nguyên
# print(int('1.23'))
# ValueError: invalid literal for int() with base 10: '1.23'

# print(int('10,000'))
# ValueError: invalid literal for int() with base 10: '10,000'
3 và một số dấu phẩy động
# print(int('1.23'))
# ValueError: invalid literal for int() with base 10: '1.23'

# print(int('10,000'))
# ValueError: invalid literal for int() with base 10: '10,000'
4 với
# print(int('1.23'))
# ValueError: invalid literal for int() with base 10: '1.23'

# print(int('10,000'))
# ValueError: invalid literal for int() with base 10: '10,000'
5 và
# print(int('1.23'))
# ValueError: invalid literal for int() with base 10: '1.23'

# print(int('10,000'))
# ValueError: invalid literal for int() with base 10: '10,000'
6

Bài viết này mô tả các nội dung sau

  • Chuyển đổi một chuỗi thành
    # print(int('1.23'))
    # ValueError: invalid literal for int() with base 10: '1.23'
    
    # print(int('10,000'))
    # ValueError: invalid literal for int() with base 10: '10,000'
    
    3.
    # print(int('1.23'))
    # ValueError: invalid literal for int() with base 10: '1.23'
    
    # print(int('10,000'))
    # ValueError: invalid literal for int() with base 10: '10,000'
    
    5
  • Chuyển đổi một chuỗi thành
    # print(int('1.23'))
    # ValueError: invalid literal for int() with base 10: '1.23'
    
    # print(int('10,000'))
    # ValueError: invalid literal for int() with base 10: '10,000'
    
    4.
    # print(int('1.23'))
    # ValueError: invalid literal for int() with base 10: '1.23'
    
    # print(int('10,000'))
    # ValueError: invalid literal for int() with base 10: '10,000'
    
    6
  • Chuyển đổi một chuỗi ký hiệu nhị phân, bát phân và thập lục phân thành
    # print(int('1.23'))
    # ValueError: invalid literal for int() with base 10: '1.23'
    
    # print(int('10,000'))
    # ValueError: invalid literal for int() with base 10: '10,000'
    
    3
  • Chuyển đổi một chuỗi ký hiệu hàm mũ thành
    # print(int('1.23'))
    # ValueError: invalid literal for int() with base 10: '1.23'
    
    # print(int('10,000'))
    # ValueError: invalid literal for int() with base 10: '10,000'
    
    4

Sử dụng

print(int('10,000'.replace(',', '')))
# 10000
3 để chuyển đổi một số nguyên hoặc số dấu phẩy động thành một chuỗi

Nếu bạn muốn chuyển đổi định dạng của chuỗi hoặc số, hãy sử dụng hàm

print(int('10,000'.replace(',', '')))
# 10000
4 hoặc phương thức
print(int('10,000'.replace(',', '')))
# 10000
4 của
# print(int('1.23'))
# ValueError: invalid literal for int() with base 10: '1.23'

# print(int('10,000'))
# ValueError: invalid literal for int() with base 10: '10,000'
2

  • Định dạng chuỗi và số bằng format() trong Python

Bạn cũng có thể chuyển đổi danh sách chuỗi thành danh sách số

  • Chuyển đổi danh sách chuỗi và danh sách số với nhau trong Python

Liên kết được tài trợ

Chuyển đổi một chuỗi thành # print(int('1.23')) # ValueError: invalid literal for int() with base 10: '1.23' # print(int('10,000')) # ValueError: invalid literal for int() with base 10: '10,000' 3. # print(int('1.23')) # ValueError: invalid literal for int() with base 10: '1.23' # print(int('10,000')) # ValueError: invalid literal for int() with base 10: '10,000' 5

# print(int('1.23'))
# ValueError: invalid literal for int() with base 10: '1.23'

# print(int('10,000'))
# ValueError: invalid literal for int() with base 10: '10,000'
5 chuyển đổi một chuỗi thành một số nguyên
# print(int('1.23'))
# ValueError: invalid literal for int() with base 10: '1.23'

# print(int('10,000'))
# ValueError: invalid literal for int() with base 10: '10,000'
3

print(int('100'))
print(type(int('100')))
# 100
# 

nguồn.

Một chuỗi chứa

print(float('1.23'))
print(type(float('1.23')))
# 1.23
# 
1 hoặc
print(float('1.23'))
print(type(float('1.23')))
# 1.23
# 
2 phát sinh lỗi

# print(int('1.23'))
# ValueError: invalid literal for int() with base 10: '1.23'

# print(int('10,000'))
# ValueError: invalid literal for int() with base 10: '10,000'

nguồn.

Một chuỗi được phân tách bằng dấu phẩy có thể được chuyển đổi bằng cách xóa

print(float('1.23'))
print(type(float('1.23')))
# 1.23
# 
2 bằng
print(float('1.23'))
print(type(float('1.23')))
# 1.23
# 
4 (thay thế bằng chuỗi rỗng
print(float('1.23'))
print(type(float('1.23')))
# 1.23
# 
5)

print(int('10,000'.replace(',', '')))
# 10000

nguồn.

Xem bài viết sau để biết về

print(float('1.23'))
print(type(float('1.23')))
# 1.23
# 
4

  • Thay chuỗi trong Python (replace, translate, re. phụ, lại. phụ)

Chuyển đổi một chuỗi thành # print(int('1.23')) # ValueError: invalid literal for int() with base 10: '1.23' # print(int('10,000')) # ValueError: invalid literal for int() with base 10: '10,000' 4. # print(int('1.23')) # ValueError: invalid literal for int() with base 10: '1.23' # print(int('10,000')) # ValueError: invalid literal for int() with base 10: '10,000' 6

# print(int('1.23'))
# ValueError: invalid literal for int() with base 10: '1.23'

# print(int('10,000'))
# ValueError: invalid literal for int() with base 10: '10,000'
6 chuyển đổi một chuỗi thành số dấu phẩy động
# print(int('1.23'))
# ValueError: invalid literal for int() with base 10: '1.23'

# print(int('10,000'))
# ValueError: invalid literal for int() with base 10: '10,000'
4

print(float('1.23'))
print(type(float('1.23')))
# 1.23
# 

nguồn.

Một chuỗi không có phần nguyên cũng có thể được chuyển đổi

print(float('.23'))
# 0.23

nguồn.

Một chuỗi đại diện cho một số nguyên cũng được chuyển đổi thành một số dấu phẩy động

# print(int('1.23'))
# ValueError: invalid literal for int() with base 10: '1.23'

# print(int('10,000'))
# ValueError: invalid literal for int() with base 10: '10,000'
4

print(float('100'))
print(type(float('100')))
# 100.0
# 

nguồn.

Liên kết được tài trợ

Chuyển đổi một chuỗi ký hiệu nhị phân, bát phân và thập lục phân thành # print(int('1.23')) # ValueError: invalid literal for int() with base 10: '1.23' # print(int('10,000')) # ValueError: invalid literal for int() with base 10: '10,000' 3

Nếu bạn chuyển một số cơ sở cho đối số thứ hai của

# print(int('1.23'))
# ValueError: invalid literal for int() with base 10: '1.23'

# print(int('10,000'))
# ValueError: invalid literal for int() with base 10: '10,000'
5, một chuỗi được coi là nhị phân, bát phân và thập lục phân

print(int('100', 2))
print(int('100', 8))
print(int('100', 16))
# 4
# 64
# 256

nguồn.

Nếu bỏ qua, nó được coi là số thập phân, giống như trong các ví dụ trước

print(int('100', 10))
print(int('100'))
# 100
# 100

nguồn.

Nếu cơ sở là

print(float('.23'))
# 0.23
4, thì nó được chuyển đổi dựa trên tiền tố của chuỗi (
print(float('.23'))
# 0.23
5,
print(float('.23'))
# 0.23
6,
print(float('.23'))
# 0.23
7 hoặc
print(float('.23'))
# 0.23
8,
print(float('.23'))
# 0.23
9,
print(float('100'))
print(type(float('100')))
# 100.0
# 
0)

print(int('0b100', 0))
print(int('0o100', 0))
print(int('0x100', 0))
# 4
# 64
# 256

nguồn.

Tiền tố và bảng chữ cái thập lục phân có thể được viết bằng chữ hoa hoặc chữ thường

print(int('FF', 16))
print(int('ff', 16))
# 255
# 255

print(int('0xFF', 0))
print(int('0XFF', 0))
print(int('0xff', 0))
print(int('0Xff', 0))
# 255
# 255
# 255
# 255

nguồn.

Để biết thêm thông tin về chuyển đổi lẫn nhau của chuỗi nhị phân, bát phân và thập lục phân và

# print(int('1.23'))
# ValueError: invalid literal for int() with base 10: '1.23'

# print(int('10,000'))
# ValueError: invalid literal for int() with base 10: '10,000'
3, hãy xem bài viết sau

Điều gì xảy ra khi bạn truyền một chuỗi thành một int?

parseInt() để chuyển đổi chuỗi thành số nguyên. Phương thức này trả về chuỗi dưới dạng kiểu nguyên thủy int . Nếu chuỗi không chứa số nguyên hợp lệ thì nó sẽ ném NumberFormatException.

Điều gì xảy ra khi bạn cố gắng chuyển đổi một chuỗi thành một số nguyên nhưng chuỗi không phải là một số?

Nếu không thể chuyển đổi giá trị chuỗi thành số thì kết quả sẽ là NaN .

Làm cách nào để chuyển đổi chuỗi thành int cơ sở 10 trong Python?

Hàm cho phép chúng ta chuyển đổi một chuỗi thành một số nguyên bằng Python là hàm “ int() ” . Hàm int sẽ chuyển đổi số bằng cách sử dụng “cơ số 10” theo mặc định. Cơ sở 10 là những gì hệ thống thập phân được xây dựng dựa trên.