2016-03-19 28 views
0

Python'da bir sunucu-istemci sohbet odası yapıyorum. Localhost içinde hata ayıklama yaparken, hata ayıklama bağlantı noktası iş parçacığı kapalı olduğunda serbest olana kadar beklemek can sıkıcıdır. Makefileimde [1023, 65535) aralığında port numarası için rasgele bir sayıya nasıl sahip olabilirim?Makefile'de bir aralıkta rasgele sayı nasıl oluşturulur?

+0

Dinleme soketinize 'SO_REUSEADDR 'uygulamak daha temiz olabilir mi? – myaut

cevap

0

Yine de python kullandığınızdan, rasgele bir sayı oluşturmak ve makefile değişkenine kaydetmek için make shell işlevini kullanarak Makefile'den python'u çağırabilirsiniz.

İşte (Python 3 sözdizimi kullanarak) bir örnek

RANDINT=$(shell python -c 'from random import randint; print(randint(1023, 65535));') 

Artık makefile RANDINT kullanabilirsiniz bu. Bu kural sadece konsola yazdırmak olacaktır: makefile değişkenleri here üzerinde

random: 
     @echo $(RANDINT) 

Daha fazla bilgi. Ayrıca daha iyi bir yol olabileceğine dikkat et, makefile sihirbazı değilim, bu sadece vurduğum ilk çalışma çözümü.

DÜZENLEME: sadece neredeyse aynı yaklaşımı kullanan this bulundu.

İlgili konular