Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to set the program title in python

I have been building a large python program for a while, and would like to know how I would go about setting the title of the program? On a mac the title of program, which has focus, is shown in the top left corner of the screen, next the apple menu. Currently this only shows the word "Python", but I would of course like to my program's title there instead.

like image 986
FrederikNS Avatar asked Feb 24 '10 23:02

FrederikNS


2 Answers

It depends on what type of application you have. If it's a graphical application, most graphical toolkits allow you to change the title of a window (tk, which comes with python, allows you to do this by calling the title() method of your window object, as does gtk, for which you can use the set_title() method on a Gtk.Window object)

If you're talking about changing the title of the terminal window (for mac or Linux), the you have this option (from here):

import sys
sys.stdout.write("\x1b]2;Another Title\x07")

For Windows, there's a different method:

import os
os.system("title Yet Another Title")
like image 165
Daniel G Avatar answered Oct 01 '22 01:10

Daniel G


Since your program is interpreted by Python, then what actually is run is Python itself - the interpreter program. You would have to have your Python script merged with Python into a single executable and that would be able to have a separate name. For windows there is py2exe, that does that, but I have no idea if there is a similar tool for Mac OS (and if there is any need for that, there is some BSD under the hood right?).

like image 31
gruszczy Avatar answered Oct 01 '22 01:10

gruszczy