Hướng dẫn how to remove int in python - làm thế nào để loại bỏ int trong python

Làm cách nào để xóa các chữ số khỏi chuỗi?

Hướng dẫn how to remove int in python - làm thế nào để loại bỏ int trong python

Congusbongus

12.5k6 huy hiệu vàng69 Huy hiệu bạc94 Huy hiệu đồng6 gold badges69 silver badges94 bronze badges

Hỏi ngày 12 tháng 10 năm 2012 lúc 3:27Oct 12, 2012 at 3:27

8

Điều này sẽ làm việc cho tình huống của bạn?

>>> s = '12abcd405'
>>> result = ''.join([i for i in s if not i.isdigit()])
>>> result
'abcd'

Điều này sử dụng sự hiểu biết danh sách và những gì đang xảy ra ở đây tương tự như cấu trúc này:

no_digits = []
# Iterate through the string, adding non-numbers to the no_digits list
for i in s:
    if not i.isdigit():
        no_digits.append(i)

# Now join all elements of the list with '', 
# which puts all of the characters together.
result = ''.join(no_digits)

Vì @ashwinichaudhary và @KirkStrauser chỉ ra, bạn thực sự không cần sử dụng dấu ngoặc trong một lớp lót, làm cho phần bên trong dấu ngoặc đơn trở thành một biểu thức của trình tạo (hiệu quả hơn so với khả năng hiểu danh sách). Ngay cả khi điều này không phù hợp với các yêu cầu cho nhiệm vụ của bạn, đó là điều bạn nên đọc về cuối cùng :):

>>> s = '12abcd405'
>>> result = ''.join(i for i in s if not i.isdigit())
>>> result
'abcd'

Đã trả lời ngày 12 tháng 10 năm 2012 lúc 3:34Oct 12, 2012 at 3:34

RocketdonkeyrocketdonkeyRocketDonkey

Phim huy hiệu vàng 35,4K778 Huy hiệu bạc84 Hàng đồng7 gold badges78 silver badges84 bronze badges

7

Và, chỉ để ném nó vào hỗn hợp, là

no_digits = []
# Iterate through the string, adding non-numbers to the no_digits list
for i in s:
    if not i.isdigit():
        no_digits.append(i)

# Now join all elements of the list with '', 
# which puts all of the characters together.
result = ''.join(no_digits)
7 bị lãng quên sẽ hoạt động nhanh hơn rất nhiều so với các biểu thức lặp/thông thường:

Cho Python 2:

from string import digits

s = 'abc123def456ghi789zero0'
res = s.translate(None, digits)
# 'abcdefghizero'

Cho Python 3:

from string import digits

s = 'abc123def456ghi789zero0'
remove_digits = str.maketrans('', '', digits)
res = s.translate(remove_digits)
# 'abcdefghizero'

Đã trả lời ngày 12 tháng 10 năm 2012 lúc 9:46Oct 12, 2012 at 9:46

Hướng dẫn how to remove int in python - làm thế nào để loại bỏ int trong python

Jon Clements ♦ Jon ClementsJon Clements

135K32 Huy hiệu vàng240 Huy hiệu bạc273 Huy hiệu Đồng32 gold badges240 silver badges273 bronze badges

3

Không chắc chắn nếu giáo viên của bạn cho phép bạn sử dụng bộ lọc nhưng ...

filter(lambda x: x.isalpha(), "a1a2a3s3d4f5fg6h")

returns-

'aaasdffgh'

Hiệu quả hơn nhiều so với vòng lặp ...

Example:

for i in range(10):
  a.replace(str(i),'')

Hướng dẫn how to remove int in python - làm thế nào để loại bỏ int trong python

Fredtantini

15.1k8 Huy hiệu vàng46 Huy hiệu bạc54 Huy hiệu đồng8 gold badges46 silver badges54 bronze badges

Đã trả lời ngày 12 tháng 10 năm 2012 lúc 4:19Oct 12, 2012 at 4:19

Alain Nisamalain NisamAlain Nisam

6623 Huy hiệu bạc13 Huy hiệu Đồng3 silver badges13 bronze badges

2

Cái này thì sao:

out_string = filter(lambda c: not c.isdigit(), in_string)

Đã trả lời ngày 12 tháng 10 năm 2012 lúc 3:44Oct 12, 2012 at 3:44

Pavel Paulaupavel PaulauPavel Paulau

7661 Huy hiệu vàng7 Huy hiệu bạc19 Huy hiệu đồng1 gold badge7 silver badges19 bronze badges

2

Chỉ một vài (những người khác đã đề xuất một số trong số này)

Phương pháp 1:

''.join(i for i in myStr if not i.isdigit())

Phương pháp 2:

no_digits = []
# Iterate through the string, adding non-numbers to the no_digits list
for i in s:
    if not i.isdigit():
        no_digits.append(i)

# Now join all elements of the list with '', 
# which puts all of the characters together.
result = ''.join(no_digits)
0

Phương pháp 3:

no_digits = []
# Iterate through the string, adding non-numbers to the no_digits list
for i in s:
    if not i.isdigit():
        no_digits.append(i)

# Now join all elements of the list with '', 
# which puts all of the characters together.
result = ''.join(no_digits)
1

Phương pháp 4:

no_digits = []
# Iterate through the string, adding non-numbers to the no_digits list
for i in s:
    if not i.isdigit():
        no_digits.append(i)

# Now join all elements of the list with '', 
# which puts all of the characters together.
result = ''.join(no_digits)
2

Phương pháp 5:

no_digits = []
# Iterate through the string, adding non-numbers to the no_digits list
for i in s:
    if not i.isdigit():
        no_digits.append(i)

# Now join all elements of the list with '', 
# which puts all of the characters together.
result = ''.join(no_digits)
3

3

Nói ST là chuỗi không được định dạng của bạn, sau đó chạy

no_digits = []
# Iterate through the string, adding non-numbers to the no_digits list
for i in s:
    if not i.isdigit():
        no_digits.append(i)

# Now join all elements of the list with '', 
# which puts all of the characters together.
result = ''.join(no_digits)
4

Như được đề cập ở trên. Nhưng tôi đoán rằng bạn cần một cái gì đó rất đơn giản vì vậy hãy nói s là chuỗi của bạn và st_res là một chuỗi không có chữ số, thì đây là mã của bạns is your string and st_res is a string without digits, then here is your code

no_digits = []
# Iterate through the string, adding non-numbers to the no_digits list
for i in s:
    if not i.isdigit():
        no_digits.append(i)

# Now join all elements of the list with '', 
# which puts all of the characters together.
result = ''.join(no_digits)
5

Đã trả lời ngày 12 tháng 10 năm 2012 lúc 4:09Oct 12, 2012 at 4:09

iddqdiddqdiddqd

1.2991 Huy hiệu vàng8 Huy hiệu bạc9 Huy hiệu đồng1 gold badge8 silver badges9 bronze badges

Tôi muốn sử dụng Regex để thực hiện điều này, nhưng vì bạn chỉ có thể sử dụng danh sách, vòng lặp, chức năng, v.v.

Đây là những gì tôi nghĩ ra:

no_digits = []
# Iterate through the string, adding non-numbers to the no_digits list
for i in s:
    if not i.isdigit():
        no_digits.append(i)

# Now join all elements of the list with '', 
# which puts all of the characters together.
result = ''.join(no_digits)
6

Đã trả lời ngày 12 tháng 10 năm 2012 lúc 3:34Oct 12, 2012 at 3:34

Hướng dẫn how to remove int in python - làm thế nào để loại bỏ int trong python

RocketdonkeyrocketdonkeySean Johnson

Phim huy hiệu vàng 35,4K778 Huy hiệu bạc84 Hàng đồng2 gold badges15 silver badges22 bronze badges

Và, chỉ để ném nó vào hỗn hợp, là

no_digits = []
# Iterate through the string, adding non-numbers to the no_digits list
for i in s:
    if not i.isdigit():
        no_digits.append(i)

# Now join all elements of the list with '', 
# which puts all of the characters together.
result = ''.join(no_digits)
7 bị lãng quên sẽ hoạt động nhanh hơn rất nhiều so với các biểu thức lặp/thông thường:

Đã trả lời ngày 12 tháng 10 năm 2012 lúc 3:34Oct 12, 2012 at 3:34

RocketdonkeyrocketdonkeyBaahubali

Phim huy hiệu vàng 35,4K778 Huy hiệu bạc84 Hàng đồng6 gold badges31 silver badges70 bronze badges

1

Làm thế nào để bạn xóa một int khỏi một chuỗi?

Nhận chuỗi để xóa tất cả các chữ số ..
Chuyển đổi chuỗi đã cho thành một mảng ký tự ..
Khởi tạo một chuỗi trống lưu trữ kết quả ..
Đi qua mảng ký tự từ đầu đến cuối ..
Kiểm tra xem ký tự được chỉ định không phải là chữ số thì thêm ký tự này vào biến kết quả ..
Bây giờ, in kết quả ..

Loại bỏ () trong Python là gì?

Trong hướng dẫn này, chúng tôi sẽ tìm hiểu về phương thức Danh sách Python () với sự trợ giúp của các ví dụ.Phương thức Remove () xóa phần tử khớp đầu tiên (được truyền dưới dạng đối số) khỏi danh sách.removes the first matching element (which is passed as an argument) from the list.

Làm thế nào để bạn thay thế int trong python?

Phương pháp 2..
Nhận đầu vào dưới dạng số nguyên từ người dùng ..
Sau đó chuyển đổi số nguyên thành chuỗi bằng phương thức str () ..
Thay thế tất cả '0' bằng '5' bằng phương thức thay thế () ..
Sau đó chuyển đổi chuỗi thành một số nguyên bằng phương thức int () ..
Cuối cùng, in số nguyên được chuyển đổi làm đầu ra ..

Làm thế nào để bạn loại bỏ các chữ số khỏi một số nguyên?

Để xóa chữ số thứ n từ bắt đầu: Nhận số và chữ số thứ n sẽ bị xóa.Đếm số lượng chữ số.Vòng lặp số chữ số thời gian bằng cách đếm nó với một biến i.Nếu I bằng (số chữ số - n), thì hãy bỏ qua, khác hãy thêm chữ số ith là [new_number = (new_number * 10) + ith_digit].Get the number and the nth digit to be deleted. Count the number of digits. Loop number of digits time by counting it with a variable i. If the i is equal to (number of digits – n), then skip, else add the ith digit as [ new_number = (new_number * 10) + ith_digit ].