<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
On 2012/02/21 06:55 AM, Michael Lewis wrote:
<blockquote
cite="mid:CAE5MWfVdUesHzDG50aB2M3vFWVbCgAOWTnh=zCGGX135b0JB5Q@mail.gmail.com"
type="cite">
<div dir="ltr">I am back to being confused. I just tried running
the module without first importing it, and it worked just fine.
How do I do this properly to where the module only runs if I
import it?
<div><br>
</div>
<div>Code:</div>
<div><br>
</div>
<div>
<div>def MultiplyText(text, multiplier):</div>
<div> '''Recieve a S & int. For digits in S, multiply
by multiplier and return updated S.'''</div>
<div> return ' '.join(str(int(num) * multiplier) if
num.isdigit() else num for num in text)</div>
<div><br>
</div>
<div><br>
</div>
<div>def GetUserInput():</div>
<div> '''Get S & multiplier. Test multiplier.isdigit().
Call MultiplyText(text, multiplier)'''</div>
<div> text = raw_input('Enter some text: ')</div>
<div> while True:</div>
<div> multiplier = raw_input('Enter a multiplier: ')</div>
<div> try:</div>
<div> multiplier = int(multiplier)</div>
<div> break</div>
<div> except ValueError:</div>
<div> continue</div>
<div> return MultiplyText(text.split(), multiplier)</div>
<div><br>
</div>
<div><br>
</div>
<div>if "__name__" == '__main__':</div>
<div> GetUserInput()</div>
<div><br>
</div>
<div>What I did in IDLE:</div>
<div><br>
</div>
<div>
<div>>>> </div>
<div>>>> GetUserInput()</div>
<div>Enter some text: 4 times</div>
<div>Enter a multiplier: 2</div>
<div>'8 times'</div>
<div>>>> </div>
</div>
<div><br>
</div>
-- <br>
<div dir="ltr">
<div>Michael J. Lewis</div>
<div> </div>
<div><a moz-do-not-send="true"
href="mailto:mjolewis@gmail.com" target="_blank">mjolewis@gmail.com</a>
</div>
<div>415.815.7257</div>
</div>
<br>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
Tutor maillist - <a class="moz-txt-link-abbreviated" href="mailto:Tutor@python.org">Tutor@python.org</a>
To unsubscribe or change subscription options:
<a class="moz-txt-link-freetext" href="http://mail.python.org/mailman/listinfo/tutor">http://mail.python.org/mailman/listinfo/tutor</a></pre>
</blockquote>
<br>
If you change '__main__' to the name of the file, without the
extension, it will match __name__.<br>
Alternatively, you can have an else after your `__name__ ==
'__main__'` <br>
<br>
$ cat t1.py<br>
if __name__ == '__main__':<br>
print 'Executed from __main__'<br>
<br>
if __name__ == 't1':<br>
print 'Executed by import from t2'<br>
<br>
$ cat t2.py<br>
import t1<br>
<br>
$ python t1.py<br>
Executed from __main__<br>
<br>
$ python t2.py<br>
Executed by import from t2<br>
<br>
$ cat t3.py<br>
if __name__ == '__main__':<br>
print 'Executed from __main__'<br>
else:<br>
print 'Executed by import'<br>
<br>
$ cat t4.py<br>
import t3<br>
<br>
$ python t3.py<br>
Executed from __main__<br>
<br>
$ python t4.py<br>
Executed by import<br>
<br>
<div class="moz-signature">-- <br>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<title>Email Signature</title>
<style type="text/css">
p { font-size:8.5pt; font-family: Arial, Helvetica, sans-serif; color: #000;}
.subscribe {font-weight:bold; font-style:italic;}
.compuscan {color: #c60c30; letter-spacing:2px; text-transform:uppercase; font-weight:bold}
.green {color:#093;}
</style>
<p>Christian Witts<br>
Python Developer<br>
<br>
<span class="compuscan">COMPUSCAN | CONFIDENCE IN CREDIT</span>
<br>
<br>
Telephone : +27 21 888 6000<br>
National Call Centre : 0861 51 41 31<br>
Fax : +27 21 413 2424<br>
Email : <a href="mailto:cwitts@compuscan.co.za"
style="color:#000">cwitts@compuscan.co.za</a><br>
Website: <a href="http://www.compuscan.co.za"
style="color:#000">www.compuscan.co.za</a><br>
<br>
<span class="subscribe">Would you like to hear more from us? <a
href="http://compuscan.us2.list-manage.com/subscribe?u=b14cacd3a29021ca07d2b32b9&id=163a9926e2"
style="color:#000">Register here and receive our newsletters
and other business communications.</a></span><br>
<br>
<strong><em>NOTE:</em></strong> This e-mail (including
attachments) is subject to the disclaimer published at our <a
href="http://www.compuscan.co.za/about-us/132-email-disclaimer"
style="color:#000">website</a>. <br>
If you cannot access the disclaimer, request it from <a
href="mailto:email.disclaimer@compuscan.co.za"
style="color:#000">email.disclaimer@compuscan.co.za</a> or
0861 514131. <br>
National Credit Regulator Credit Bureau Registration No. NCRCB6
<br>
<em class="green">Please consider the environment before
printing</em></p>
</div>
</body>
</html>