2008-08-17 13 views
43

मैं एक पाइथन प्रोग्राम मुझे सतर्क करना चाहता हूं जब उसने बीप शोर बनाकर अपना काम पूरा कर लिया हो। वर्तमान में, मैं import os का उपयोग करता हूं और फिर "प्रक्रिया पूर्ण" कहने के लिए कमांड लाइन भाषण प्रोग्राम का उपयोग करता हूं। मैं बल्कि यह एक साधारण "घंटी" होना चाहिए।पायथन साउंड ("बेल")

मुझे पता है कि एक ऐसा फ़ंक्शन है जिसका उपयोग कोको ऐप्स, एनएसबीप में किया जा सकता है, लेकिन मुझे नहीं लगता कि इसके साथ बहुत कुछ करने के लिए है।

मैंने print(\a) भी कोशिश की है लेकिन यह काम नहीं किया है।

मैं मैक का उपयोग कर रहा हूं, अगर आप मेरी कोको टिप्पणी से नहीं बता सकते हैं, तो इससे मदद मिल सकती है।

धन्यवाद!

print('\a') 

(:

import sys 
sys.stdout.write('\a') 
sys.stdout.flush() 

कि 10.5

वास्तव में मैक ओएस पर यहाँ मेरे लिए काम करता है, मैं अपने मूल प्रयास एक छोटे संशोधन के साथ भी काम करता है लगता है:

+6

'आयात ओएस होने की

from AppKit import NSSound #prepare sound: sound = NSSound.alloc() sound.initWithContentsOfFile_byReference_('/System/Library/Sounds/Ping.aiff', True) #rewind and play whenever you need it: sound.stop() #rewind sound.play() 

स्टैंडर्ड ध्वनि फ़ाइलें ; ओएससिस्टम ('बीयर टाइम' कहें। '); प्रिंट ('\ a \ a \ a') ' –

उत्तर

61

आप की कोशिश की है आपको केवल चरित्र अनुक्रम के चारों ओर एकल उद्धरण की आवश्यकता है)।

+4

मैं उबंटू पर हूं, यह मेरे लिए काम नहीं करता है। कोई उपाय? – kecske

+11

@kecske यह सामान्य है [श्रव्य-घंटी को अक्षम करने के लिए] (http://www.cyberciti.biz/faq/how-to-linux-disable-or-turn-off-beep-sound-for-terminal/) में टर्मिनल कॉन्फ़िगरेशन, जिसका अर्थ यह होगा "काम करता है", लेकिन कोई शोर नहीं करता है (गलती, सिर्फ ध्यान दिया गया है कि आपकी टिप्पणी 9 महीने पहले पोस्ट की गई थी) – dbr

+0

विंडोज एक्सपी पर भी काम करता है (कंसोल ऐप में)। – martineau

5

मुझे काम करने के लिए iTerm में print('\a') के लिए मेरी सक्रिय टर्मिनल प्रोफ़ाइल में "मौन टर्मिनल घंटी" विकल्प बंद करना पड़ा। टर्मिनल में डिफ़ॉल्ट रूप से ठीक काम करना प्रतीत होता था।

तुम भी सिस्टम बीप खेलने के लिए मैक मॉड्यूल Carbon.Snd उपयोग कर सकते हैं:

>>> import Carbon.Snd 
>>> Carbon.Snd.SysBeep(1) 
>>> 

कार्बन मॉड्यूल ही दस्तावेज़ों की जरूरत नहीं है, इसलिए मैं help(Carbon.Snd) उपयोग करने के लिए देखने के लिए क्या कार्यों उपलब्ध थे। ऐसा लगता है कि कार्बन पर प्रत्यक्ष इंटरफ़ेस है, इसलिए ऐप्पल डेवलपर कनेक्शन पर दस्तावेज़ शायद मदद करते हैं।

10

आप PyObjC (अजगर - ऑब्जेक्टिव-सी पुल) है, तो स्थापित या X 10.5 के सिस्टम अजगर (जो PyObjC साथ जहाजों) ओएस पर चल रहे हैं, तो आप

from AppKit import NSBeep 
NSBeep() 

प्रणाली खेलने के लिए क्या कर सकते हैं चेतावनी।

6

मैंने मिक्सर को पायगैम मॉड्यूल से आजमाया, और यह ठीक काम करता है। सबसे पहले मॉड्यूल स्थापित: कार्यक्रम में फिर

$ sudo apt-get install python-pygame 

, इस बारे में:

from pygame import mixer 
mixer.init() #you must initialize the mixer 
alert=mixer.Sound('bell.wav') 
alert.play() 

pygame के साथ आप अनुकूलन विकल्प है, जो आपको अतिरिक्त के साथ प्रयोग कर सकते हैं की एक बहुत कुछ है।

1

बैरी वार्क के उत्तर पर बिल्डिंग ... NSBeep() ऐपकिट से ठीक काम करता है, लेकिन टास्कबार कूद में टर्मिनल/ऐप आइकन भी बनाता है।NSSound() साथ कुछ अतिरिक्त लाइनें कि बचा जाता है और एक अन्य ध्वनि का उपयोग करने का अवसर देता: कमांडलाइन locate /System/Library/Sounds/*.aiff के माध्यम से पाया जा सकता है NSBeep() द्वारा इस्तेमाल किया फ़ाइल लगता '/System/Library/Sounds/Funk.aiff'

संबंधित मुद्दे