if n == 1: return [(-1,), (1,)]
if n == 2: return [(-1,0), (1,0), (0,-1), (0,1)]
if n == 3: return [(-1,0,0), (1,0,0), (0,-1,0), (0,1,0), (0,0,-1), (0,0,1)]
Về cơ bản, hãy trả lại danh sách 2n
bộ dữ liệu phù hợp với đặc điểm kỹ thuật ở trên. Đoạn mã trên hoạt động tốt cho mục đích của tôi nhưng tôi muốn thấy một hàm hoạt động cho tất cả n ∈ ℕ (chỉ để chỉnh sửa). Bao gồm cả tuple([0]*n)
trong câu trả lời là chấp nhận được bởi tôi.Cách tạo ra loại danh sách này là gì? (Khuôn mặt của hình chữ nhật n)
Tôi đang sử dụng tính năng này để tạo hướng của khuôn mặt cho thước đo polytope. Đối với tất cả các hướng, tôi có thể sử dụng list(itertools.product(*[(0, -1, 1)]*n))
, nhưng tôi không thể đưa ra một cái gì đó khá ngắn gọn cho chỉ hướng khuôn mặt.
tôi có lẽ muốn ngừng suy nghĩ về nó và sử dụng một 'vòng for'. – user2357112
Ehm .. * "Code Golf không còn là chủ đề cho Stack Overflow" *. – arshajii
@arshajii: đó không phải là sân gôn. Như bạn có thể thấy, câu trả lời bình chọn hàng đầu không phải là sân gôn. – rhombidodecahedron