Hướng dẫn cmp function c++ - hàm cmp c ++

56

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.Learn more.
Learn more.

Tôi không thể làm cho lệnh

Traceback [most recent call last]:
  File "G:\Dropbox\Code\a = [1,2,3]", line 3, in 
    c = cmp[a,b]
 NameError: name 'cmp' is not defined
[Finished in 0.1s]
9 hoạt động.

Đây là mã:

a = [1,2,3]
b = [1,2,3]
c = cmp[a,b]
print [c]

Tôi đang gặp lỗi:

Traceback [most recent call last]:
  File "G:\Dropbox\Code\a = [1,2,3]", line 3, in 
    c = cmp[a,b]
 NameError: name 'cmp' is not defined
[Finished in 0.1s]

hỏi ngày 18 tháng 3 năm 2014 lúc 20:30Mar 18, 2014 at 20:30Mar 18, 2014 at 20:30

3

Như đã đề cập trong các bình luận,

def cmp[a, b]:
    return [a > b] - [a < b] 
0 không tồn tại trong Python 3. Nếu bạn thực sự muốn nó, bạn có thể tự xác định nó:
def cmp[a, b]:
    return [a > b] - [a < b] 

được lấy từ bản gốc những gì mới trong Python 3.0. Tuy nhiên, điều đó khá hiếm - mặc dù không phải là chưa từng thấy - rằng nó thực sự cần thiết, vì vậy, bạn có thể muốn nghĩ về việc liệu đó có thực sự là cách tốt nhất để làm bất cứ điều gì bạn đang làm.

Đã trả lời ngày 18 tháng 3 năm 2014 lúc 20:43Mar 18, 2014 at 20:43Mar 18, 2014 at 20:43

DSMDSMDSMDSM

328K62 Huy hiệu vàng573 Huy hiệu bạc481 Huy hiệu Đồng62 gold badges573 silver badges481 bronze badges62 gold badges573 silver badges481 bronze badges

2

Trong Python 3.x, bạn có thể

def cmp[a, b]:
    return [a > b] - [a < b] 
1 và sử dụng mô -đun vận hành ____22,
def cmp[a, b]:
    return [a > b] - [a < b] 
3, v.v ... thay vì
Traceback [most recent call last]:
  File "G:\Dropbox\Code\a = [1,2,3]", line 3, in 
    c = cmp[a,b]
 NameError: name 'cmp' is not defined
[Finished in 0.1s]
9

Đã trả lời ngày 22 tháng 6 năm 2018 lúc 2:57Jun 22, 2018 at 2:57Jun 22, 2018 at 2:57

Maxinmaxinmaxinmaxin

1011 Huy hiệu bạc2 Huy hiệu đồng1 silver badge2 bronze badges1 silver badge2 bronze badges

Khi cần dấu hiệu, có lẽ sự thay thế an toàn nhất là sử dụng Math.CopySign:

import math
ang = -2
# alternative for cmp[ang, 0]:
math.copysign[1, ang]

# Result: -1

Cụ thể nếu ANG thuộc loại NP.Float64 vì khấu hao của toán tử '-'. Thí dụ:

import numpy as np

def cmp_0[a, b]:
    return [a > b] - [a < b]

ang = np.float64[-2]
cmp_0[ang, 0]

# Result:
# DeprecationWarning: numpy boolean subtract, the `-` operator, is deprecated, 
# use the bitwise_xor, the `^` operator, or the logical_xor function instead.

Thay vào đó người ta có thể sử dụng:

a = [1,2,3]
b = [1,2,3]
c = cmp[a,b]
print [c]
0

Đã trả lời ngày 18 tháng 7 năm 2019 lúc 7:03Jul 18, 2019 at 7:03Jul 18, 2019 at 7:03

LeoleoLeoLeo

1681 Huy hiệu bạc9 Huy hiệu đồng1 silver badge9 bronze badges1 silver badge9 bronze badges

Thêm vào câu trả lời của @maxin, trong

def cmp[a, b]:
    return [a > b] - [a < b] 
5, nếu bạn muốn so sánh hai danh sách các bộ dữ liệu
def cmp[a, b]:
    return [a > b] - [a < b] 
6 và
def cmp[a, b]:
    return [a > b] - [a < b] 
7
a = [1,2,3]
b = [1,2,3]
c = cmp[a,b]
print [c]
4

Đã trả lời ngày 23 tháng 1 năm 2020 lúc 12:48Jan 23, 2020 at 12:48Jan 23, 2020 at 12:48

ChidichidiChidiChidi

85311 Huy hiệu bạc13 Huy hiệu đồng11 silver badges13 bronze badges11 silver badges13 bronze badges

Mặc dù trong trường hợp chung, đây đều là những thay thế tốt cho

Traceback [most recent call last]:
  File "G:\Dropbox\Code\a = [1,2,3]", line 3, in 
    c = cmp[a,b]
 NameError: name 'cmp' is not defined
[Finished in 0.1s]
9, đối với trường hợp sử dụng thực tế được đưa ra bởi poster ban đầu, chắc chắn
a = [1,2,3]
b = [1,2,3]
c = cmp[a,b]
print [c]
6

hoặc công bằng

a = [1,2,3]
b = [1,2,3]
c = cmp[a,b]
print [c]
7

sẽ làm việc khá tốt.

Đã trả lời ngày 13 tháng 4 năm 2021 lúc 15:10Apr 13, 2021 at 15:10Apr 13, 2021 at 15:10

Bạn có thể sử dụng cách này dễ dàng hơn

a = [1,2,3]
b = [1,2,3]
c = cmp[a,b]
print [c]
8

Đã trả lời ngày 25 tháng 7 lúc 6:25Jul 25 at 6:25Jul 25 at 6:25

Nếu A hoặc B là một đối tượng lớp, thì các câu trả lời trên sẽ có lỗi biên dịch như dưới đây: Ví dụ: A là Lớp CLOCK:

Traceback [most recent call last]:
  File "G:\Dropbox\Code\a = [1,2,3]", line 3, in 
    c = cmp[a,b]
 NameError: name 'cmp' is not defined
[Finished in 0.1s]
0

Thay đổi loại bằng int [] để xóa lỗi:

Traceback [most recent call last]:
  File "G:\Dropbox\Code\a = [1,2,3]", line 3, in 
    c = cmp[a,b]
 NameError: name 'cmp' is not defined
[Finished in 0.1s]
1

Barmar

700K53 Huy hiệu vàng470 Huy hiệu bạc579 Huy hiệu đồng53 gold badges470 silver badges579 bronze badges53 gold badges470 silver badges579 bronze badges

Đã trả lời ngày 22 tháng 6 năm 2019 lúc 22:22Jun 22, 2019 at 22:22Jun 22, 2019 at 22:22

Peter Chenpeter ChenPeter ChenPeter Chen

7275 Huy hiệu bạc2 Huy hiệu Đồng5 silver badges2 bronze badges5 silver badges2 bronze badges

1

Hàm

Traceback [most recent call last]:
  File "G:\Dropbox\Code\a = [1,2,3]", line 3, in 
    c = cmp[a,b]
 NameError: name 'cmp' is not defined
[Finished in 0.1s]
9 này chỉ hoạt động trên Python phiên bản 2.x, nếu bạn cố gắng sử dụng nó trong phiên bản 3.x, nó sẽ gây ra lỗi:
Traceback [most recent call last]:
  File "G:\Dropbox\Code\a = [1,2,3]", line 3, in 
    c = cmp[a,b]
 NameError: name 'cmp' is not defined
[Finished in 0.1s]
2

Xem mã bên dưới:

Traceback [most recent call last]:
  File "G:\Dropbox\Code\a = [1,2,3]", line 3, in 
    c = cmp[a,b]
 NameError: name 'cmp' is not defined
[Finished in 0.1s]
3

output:

Traceback [most recent call last]:
  File "G:\Dropbox\Code\a = [1,2,3]", line 3, in 
    c = cmp[a,b]
 NameError: name 'cmp' is not defined
[Finished in 0.1s]
4

Mặc dù so sánh số nguyên cmp [] chỉ thực hiện phép trừ đối số của nó, trong trường hợp này là a -b, nếu phép trừ là -nó đã trả về -1 i.e ab

Traceback [most recent call last]:
  File "G:\Dropbox\Code\a = [1,2,3]", line 3, in 
    c = cmp[a,b]
 NameError: name 'cmp' is not defined
[Finished in 0.1s]
5

output:

Traceback [most recent call last]:
  File "G:\Dropbox\Code\a = [1,2,3]", line 3, in 
    c = cmp[a,b]
 NameError: name 'cmp' is not defined
[Finished in 0.1s]
6

Again:

Traceback [most recent call last]:
  File "G:\Dropbox\Code\a = [1,2,3]", line 3, in 
    c = cmp[a,b]
 NameError: name 'cmp' is not defined
[Finished in 0.1s]
7

output:

Traceback [most recent call last]:
  File "G:\Dropbox\Code\a = [1,2,3]", line 3, in 
    c = cmp[a,b]
 NameError: name 'cmp' is not defined
[Finished in 0.1s]
8

Khi cả hai đối số bằng nhau, tức là a = b, nó sẽ trả về 0 dưới dạng đầu ra. Ở đây, chúng tôi đã vượt qua hai loại giá trị chuỗi. Ở đây, cmp [] so sánh cả hai ký tự chuỗi theo ký tự và nếu được tìm thấy giống nhau thì trả về 0.

Đã trả lời ngày 7 tháng 4 năm 2021 lúc 6:40Apr 7, 2021 at 6:40Apr 7, 2021 at 6:40

TaiietaieTaieTaie

73710 Huy hiệu bạc26 Huy hiệu Đồng10 silver badges26 bronze badges10 silver badges26 bronze badges

CMP trong Python 3 là gì?

Python | Hàm CMP [] X so sánh hai số nguyên và trả về -1, 0, 1 theo so sánh. CMP [] không hoạt động trong Python 3.x. Bạn có thể muốn xem danh sách so sánh trong Python. Cú pháp: Các tham số CMP [A, B]: A và B là hai số trong đó việc so sánh đang được thực hiện.cmp[] does not work in python 3.x. You might want to see list comparison in Python. Syntax: cmp[a, b] Parameters: a and b are the two numbers in which the comparison is being done.cmp[] does not work in python 3. x. You might want to see list comparison in Python. Syntax: cmp[a, b] Parameters: a and b are the two numbers in which the comparison is being done.

Chức năng CMP hoạt động như thế nào trong Python?

CMP [] là một phần của thư viện tiêu chuẩn Python so sánh hai số nguyên. Kết quả so sánh là -1 nếu số nguyên đầu tiên nhỏ hơn thứ hai và 1 nếu số nguyên thứ nhất lớn hơn so với thứ hai. Nếu cả hai đều bằng kết quả của CMP [] bằng không.compares two integers. The result of comparison is -1 if the first integer is smaller than second and 1 if the first integer is greater than the second. If both are equal the result of cmp[] is zero.compares two integers. The result of comparison is -1 if the first integer is smaller than second and 1 if the first integer is greater than the second. If both are equal the result of cmp[] is zero.

__ cmp __ python là gì?

In Python 2, __cmp__[self, other] implemented comparison between two objects, returning a negative value if self < other , positive if self > other , and zero if they were equal.implemented comparison between two objects, returning a negative value if self < other , positive if self > other , and zero if they were equal.

Chức năng của CMP là gì?

Bảng điều khiển toàn diện [CMP] là một xét nghiệm máu cung cấp cho các bác sĩ thông tin về cân bằng chất lỏng của cơ thể, mức độ của các chất điện giải như natri và kali, và thận và gan hoạt động tốt như thế nào.gives doctors information about the body's fluid balance, levels of electrolytes like sodium and potassium, and how well the kidneys and liver are working.gives doctors information about the body's fluid balance, levels of electrolytes like sodium and potassium, and how well the kidneys and liver are working.

Bài Viết Liên Quan

Chủ Đề