281
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.
Tôi muốn lấy một số nguyên [đó sẽ là
Ví dụ: Tôi muốn vượt qua trong
hex[255] # 0xff
0 và thoát ra hex[255] # 0xff
1, hoặc hex[255] # 0xff
2 và nhận hex[255] # 0xff
3.Tôi đã thử làm điều này với
hex[255] # 0xff
465hex[255] # 0xff
5, nhưng điều đó làm nghẹt bất cứ thứ gì trên hex[255] # 0xff
6 vì nó muốn lấy một chuỗi ký tự duy nhất.
Bartoszkp
33.9K13 Huy hiệu vàng103 Huy hiệu bạc128 Huy hiệu đồng13 gold badges103 silver badges128 bronze badges
hỏi ngày 16 tháng 2 năm 2010 lúc 0:07Feb 16, 2010 at 0:07
0
Bạn đang tìm kiếm chức năng
hex[255] # 0xff
7.Bạn dường như đang pha trộn các biểu diễn thập phân của các số nguyên và biểu diễn hex của các số nguyên, vì vậy nó không hoàn toàn rõ ràng những gì bạn cần. Dựa trên mô tả bạn đã đưa ra, tôi nghĩ rằng một trong những đoạn này cho thấy những gì bạn muốn.
>>> chr[0x65] == '\x65'
True
>>> hex[65]
'0x41'
>>> chr[65] == '\x41'
True
Lưu ý rằng điều này khá khác biệt so với một chuỗi chứa một số nguyên dưới dạng hex. Nếu đó là những gì bạn muốn, hãy sử dụng
hex[255] # 0xff
8 tích hợp.Đã trả lời ngày 16 tháng 2 năm 2010 lúc 0:10Feb 16, 2010 at 0:10
Mike Grahammike GrahamMike Graham
71.2K14 Huy hiệu vàng98 Huy hiệu bạc129 Huy hiệu đồng14 gold badges98 silver badges129 bronze badges
3
Điều này sẽ chuyển đổi một số nguyên thành chuỗi hex 2 chữ số với tiền tố 0x:
strHex = "0x%0.2X" % integerVariable
Đã trả lời ngày 16 tháng 2 năm 2010 lúc 0:17Feb 16, 2010 at 0:17
Greg Braygreg BrayGreg Bray
14.4K10 Huy hiệu vàng80 Huy hiệu bạc102 Huy hiệu đồng10 gold badges80 silver badges102 bronze badges
1
Còn
hex[255] # 0xff
9 thì sao?hex[255] # 0xff
Nếu bạn thực sự muốn có
print '\\' + hex[255][1:]
0 ở phía trước, bạn có thể làm:print '\\' + hex[255][1:]
Đã trả lời ngày 16 tháng 2 năm 2010 lúc 0:12Feb 16, 2010 at 0:12
Felix Klingfelix KlingFelix Kling
772K172 Huy hiệu vàng1069 Huy hiệu bạc1116 Huy hiệu đồng172 gold badges1069 silver badges1116 bronze badges
1
Hãy để tôi thêm cái này, bởi vì đôi khi bạn chỉ muốn biểu diễn chữ số duy nhất
.
'{:x}'.format[15]
> f
Và bây giờ với chuỗi định dạng
print '\\' + hex[255][1:]
2 mới bạn có thể làm:f'{15:x}'
> f
Để thêm 0 đệm, bạn có thể sử dụng
print '\\' + hex[255][1:]
3:f'{2034:0>4X}'
> 07F2
Lưu ý: 'F' ban đầu trong
4 là biểu thị chuỗi định dạngprint '\\' + hex[255][1:]
Đã trả lời ngày 20 tháng 9 năm 2017 lúc 0:33Sep 20, 2017 at 0:33
Monkutmonkutmonkut
40.4K23 Huy hiệu vàng120 Huy hiệu bạc148 Huy hiệu đồng23 gold badges120 silver badges148 bronze badges
2
Try:
"0x%x" % 255 # => 0xff
hoặc
"0x%X" % 255 # => 0xFF
Tài liệu Python nói: "Giữ cái này dưới gối của bạn: //docs.python.org/l Library/index.html"
Đã trả lời ngày 16 tháng 2 năm 2010 lúc 0:11Feb 16, 2010 at 0:11
DawiddawidDawid
4.0122 Huy hiệu vàng26 Huy hiệu bạc 30 Huy hiệu Đồng2 gold badges26 silver badges30 bronze badges
1
Nếu bạn muốn đóng gói một cấu trúc có giá trị
struct.pack['B', 65]
[Và có, 65 là \ x41, không phải \ x65.]
Lớp Struct cũng sẽ thuận tiện xử lý tính nội bộ cho giao tiếp hoặc sử dụng khác.
Đã trả lời ngày 19 tháng 9 năm 2011 lúc 12:11Sep 19, 2011 at 12:11
XTLXTLXTL
8321 Huy hiệu vàng8 Huy hiệu bạc23 Huy hiệu đồng1 gold badge8 silver badges23 bronze badges
1
Với
print '\\' + hex[255][1:]
5, theo các ví dụ về định dạng, chúng ta có thể làm:strHex = "0x%0.2X" % integerVariable
0Đã trả lời ngày 5 tháng 9 năm 2018 lúc 1:28Sep 5, 2018 at 1:28
Bản đồMap
3694 Huy hiệu bạc9 Huy hiệu Đồng4 silver badges9 bronze badges
Lưu ý rằng đối với các giá trị lớn,
hex[255] # 0xff
9 vẫn hoạt động [một số câu trả lời khác không]:strHex = "0x%0.2X" % integerVariable
1Python 2:
print '\\' + hex[255][1:]
7 Python 3: print '\\' + hex[255][1:]
8Python 3:
print '\\' + hex[255][1:]
8Đối với một tin nhắn RSA được giải mã, người ta có thể làm như sau:
strHex = "0x%0.2X" % integerVariable
2Đã trả lời ngày 5 tháng 10 năm 2016 lúc 21:29Oct 5, 2016 at 21:29
LuclucLuc
4.6732 Huy hiệu vàng43 Huy hiệu bạc44 Huy hiệu đồng2 gold badges43 silver badges44 bronze badges
3
Đối với Python> = 3.6, hãy sử dụng định dạng F-String:
strHex = "0x%0.2X" % integerVariable
3Đã trả lời ngày 5 tháng 4 lúc 4:57Apr 5 at 4:57
Xinnyi lixinyi liXinyi Li
6026 Huy hiệu bạc9 Huy hiệu Đồng6 silver badges9 bronze badges
1
strHex = "0x%0.2X" % integerVariable
4Ví dụ:
strHex = "0x%0.2X" % integerVariable
5Đã trả lời ngày 30 tháng 1 năm 2019 lúc 6:53Jan 30, 2019 at 6:53
Điều này làm việc tốt nhất cho tôi
strHex = "0x%0.2X" % integerVariable
6Thay đổi [2] nếu bạn muốn một số có chiều rộng lớn hơn [2 là cho 2 ký tự in hex], vì vậy 3 sẽ cung cấp cho bạn những điều sau đây
strHex = "0x%0.2X" % integerVariable
7Đã trả lời ngày 10 tháng 6 năm 2017 lúc 19:14Jun 10, 2017 at 19:14
shakram02shakram02shakram02
9.6323 huy hiệu vàng20 Huy hiệu bạc21 Huy hiệu đồng3 gold badges20 silver badges21 bronze badges
Tôi muốn một số nguyên ngẫu nhiên được chuyển đổi thành chuỗi hex sáu chữ số với # lúc đầu. Để có được cái này, tôi đã sử dụng
strHex = "0x%0.2X" % integerVariable
8
Đã trả lời ngày 22 tháng 1 năm 2012 lúc 22:15Jan 22, 2012 at 22:15
Ncmathsadistncmathsadistncmathsadist
4.5443 Huy hiệu vàng30 Huy hiệu bạc44 Huy hiệu đồng3 gold badges30 silver badges44 bronze badges
2
Ngoài ra, bạn có thể chuyển đổi bất kỳ số nào trong bất kỳ cơ sở nào thành Hex. Sử dụng mã một dòng này ở đây, nó dễ sử dụng và đơn giản để sử dụng:
print '\\' + hex[255][1:]
9Bạn có một chuỗi
'{:x}'.format[15]
> f
0 là số của bạn và print '\\' + hex[255][1:]
1 cơ sở của số đó. Đầu tiên, thay đổi nó thành số nguyên và sau đó thành hex nhưng hex có '{:x}'.format[15]
> f
2 ở đầu tiên vì vậy với '{:x}'.format[15]
> f
3 chúng tôi đã loại bỏ nó.Đã trả lời ngày 6 tháng 12 năm 2019 lúc 18:39Dec 6, 2019 at 18:39
Prof.PlagueProf.PlagueProf.Plague
4817 Huy hiệu bạc16 Huy hiệu đồng7 silver badges16 bronze badges
1
Như một đại diện thay thế, bạn có thể sử dụng
strHex = "0x%0.2X" % integerVariable
9Đã trả lời ngày 28 tháng 7 năm 2017 lúc 3:32Jul 28, 2017 at 3:32
Uzumakiuzumakiuzumaki
1.48913 Huy hiệu bạc26 Huy hiệu đồng13 silver badges26 bronze badges