Hướng dẫn python get opposite color - trăn có màu đối lập

Tôi đang cố gắng tìm ra màu bổ sung của một màu nhất định bằng cách sử dụng Python. Đây là mã của tôi. Mã trả về thông báo lỗi cho biết "ApertyError: 'list' đối tượng không có thuộc tính 'tham gia'" Tôi cần một gợi ý. Ngoài ra, có thể có một mã mạnh mẽ hơn, tính toán màu đối diện/bổ sung, mà về cơ bản tôi đang tìm kiếm. Đề xuất của bạn sẽ hữu ích.

from PIL import Image  

def complementaryColor(hex):
    """Returns complementary RGB color

    Example:
    >>>complementaryColor('FFFFFF')
    '000000'
    """
    if hex[0] == '#':
        hex = hex[1:]
    rgb = (hex[0:2], hex[2:4], hex[4:6])
    comp = ['02%X' % (255 - int(a, 16)) for a in rgb]
    return comp.join()

một chức năng tương tự khác

def blackwhite(my_hex):
    """Returns complementary RGB color

    Example:
    >>>complementaryColor('FFFFFF')
    '000000'
    """
    if my_hex[0] == '#':
        my_hex = my_hex[1:]
    rgb = (my_hex[0:2], my_hex[2:4], my_hex[4:6])
    comp = ['%X' % (0 if (15 - int(a, 16)) <= 7 else 15) for a in rgb]
    return ''.join(comp)


print blackwhite('#36190D')

Hỏi ngày 20 tháng 7 năm 2016 lúc 10:13Jul 20, 2016 at 10:13

Hướng dẫn python get opposite color - trăn có màu đối lập

Anay Boseanay BoseAnay Bose

8601 Huy hiệu vàng14 Huy hiệu bạc23 Huy hiệu đồng1 gold badge14 silver badges23 bronze badges

4

join của bạn và định dạng cần một sửa chữa. Danh sách không có phương thức join, chuỗi làm:

def complementaryColor(my_hex):
    """Returns complementary RGB color

    Example:
    >>>complementaryColor('FFFFFF')
    '000000'
    """
    if my_hex[0] == '#':
        my_hex = my_hex[1:]
    rgb = (my_hex[0:2], my_hex[2:4], my_hex[4:6])
    comp = ['%02X' % (255 - int(a, 16)) for a in rgb]
    return ''.join(comp)

Định dạng cho hex shoud là %02X cho hai ký tự Hex chứ không phải '02%X'. Sau này chỉ bổ sung một 02 hàng đầu vào đầu ra có 3 ký tự thay vì 6.


hex là chức năng được xây dựng, vì vậy bạn có thể xem xét thay đổi tên thành, nói

def blackwhite(my_hex):
    """Returns complementary RGB color

    Example:
    >>>complementaryColor('FFFFFF')
    '000000'
    """
    if my_hex[0] == '#':
        my_hex = my_hex[1:]
    rgb = (my_hex[0:2], my_hex[2:4], my_hex[4:6])
    comp = ['%X' % (0 if (15 - int(a, 16)) <= 7 else 15) for a in rgb]
    return ''.join(comp)


print blackwhite('#36190D')
0 để tránh làm mờ chức năng hex ban đầu.

Đã trả lời ngày 20 tháng 7 năm 2016 lúc 10:26Jul 20, 2016 at 10:26

Hướng dẫn python get opposite color - trăn có màu đối lập

Moses Koledoyemoses KoledoyeMoses Koledoye

76K8 Huy hiệu vàng125 Huy hiệu bạc133 Huy hiệu đồng8 gold badges125 silver badges133 bronze badges

4

Bạn có thể sử dụng bảng màu của Colorir cho điều đó:

>>> from colorir import SwatchPalette
>>> colors = SwatchPalette.new_complementary(2, color="ff0000")
>>> colors[1]  # Get the complementary of red
HexRGB(#00ffff)

Tất nhiên bạn có thể vượt qua bất kỳ màu nào bạn muốn cho tham số "màu" của New_Complementary để có được màu bổ sung của nó.

Đã trả lời ngày 19 tháng 5 lúc 19:01May 19 at 19:01

Hướng dẫn python get opposite color - trăn có màu đối lập

RGB (128.128.128)


Trắng

Hãy tự mình thử »


Màu sắc thập lục phân

Giá trị màu thập lục phân cũng được hỗ trợ trong tất cả các trình duyệt.

  • Một màu thập lục phân được chỉ định với: #rrggbb.
  • Như các giá trị RGB
  • Như các giá trị thập lục phân
  • Như các giá trị HSL (CSS3)
  • Như các giá trị HWB (CSS4)
  • Với từ khóa
    def blackwhite(my_hex):
        """Returns complementary RGB color
    
        Example:
        >>>complementaryColor('FFFFFF')
        '000000'
        """
        if my_hex[0] == '#':
            my_hex = my_hex[1:]
        rgb = (my_hex[0:2], my_hex[2:4], my_hex[4:6])
        comp = ['%X' % (0 if (15 - int(a, 16)) <= 7 else 15) for a in rgb]
        return ''.join(comp)
    
    
    print blackwhite('#36190D')
    
    2

Màu sắc RGB

Giá trị màu RGB được hỗ trợ trong tất cả các trình duyệt.

Một giá trị màu RGB được chỉ định với: RGB (đỏ, xanh lá cây, xanh dương).RED , GREEN , BLUE ).

Mỗi tham số xác định cường độ của màu là một số nguyên từ 0 đến 255.

Ví dụ: RGB (0,0,255) được hiển thị dưới dạng màu xanh lam, vì tham số màu xanh được đặt thành giá trị cao nhất của nó (255) và các tham số khác được đặt thành 0.

Thí dụ

Màu sắcRGBMàu sắc
RGB& nbsp;RGB (255,0,0)
RGB& nbsp;RGB (255,0,0)
RGB& nbsp;RGB (255,0,0)

Màu đỏ

RGB (0,255,0)

Thí dụ

Màu sắcRGBMàu sắc
RGB& nbsp;RGB (255,0,0)
RGB& nbsp;RGB (255,0,0)
RGB& nbsp;RGB (255,0,0)

Màu đỏ



RGB (0,255,0)

màu xanh lá

RGB (0,0,255)RRGGBB.

Màu xanh da trời

Hãy tự mình thử »

Thí dụ

Màu sắcRGBRGBMàu sắc
RGB& nbsp;& nbsp;RGB (255,0,0)
RGB& nbsp;& nbsp;RGB (255,0,0)
RGB& nbsp;& nbsp;RGB (255,0,0)

Màu đỏ

RGB (0,255,0)

Thí dụ

Màu sắcRGBRGBMàu sắc
RGB& nbsp;& nbsp;RGB (255,0,0)
RGB& nbsp;& nbsp;RGB (255,0,0)
RGB& nbsp;& nbsp;RGB (255,0,0)

Màu đỏ


RGB (0,255,0)

màu xanh lá

RGB (0,0,255)


Màu xanh da trời

Hãy tự mình thử »

Các sắc thái của màu xám thường được xác định bằng cách sử dụng các giá trị bằng nhau cho tất cả 3 nguồn ánh sáng:

RGB (0,0,0)Màu đenMàu sắc
RGB& nbsp;RGB
& nbsp;RGB (255,0,0)RGB
& nbsp;RGB (255,0,0)RGB
& nbsp;RGB (255,0,0)RGB
& nbsp;RGB (255,0,0)RGB
& nbsp;RGB (255,0,0)RGB
& nbsp;RGB (255,0,0)RGB


& nbsp;

RGB (255,0,0)

Thí dụ

Màu đỏ

RGB (0,255,0)
  color: blue; /* Blue text color */
  border: 10px solid currentcolor; /* Blue border color */
}

Màu đỏ