[Tutor] First Serious Num-Python Prog.

Karthikesh Raju karthik@james.hut.fi
Wed, 25 Sep 2002 13:27:49 +0300


  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.
  Send mail to mime@docserver.cac.washington.edu for more info.

---2098615039-2145140557-1032949669=:814238
Content-Type: TEXT/PLAIN; charset=US-ASCII

Hi All,

The following is my first serious python program. This does LS based
estimation. i havent commented it but i was filled with enthu that i
wanted to get the comments of people on how better i could do and the
means and methods to imporve this. (Please leave the comments and the
synthetic ones).

Hoping to get a lot of improvement suggestions,

Best regards
karthik



---2098615039-2145140557-1032949669=:814238
Content-Type: TEXT/PLAIN; charset=US-ASCII; name="ls.py"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.SGI.4.21.0209251327490.814238@james.hut.fi>
Content-Description: 
Content-Disposition: attachment; filename="ls.py"

ZnJvbSBOdW1lcmljIGltcG9ydCAqDQpmcm9tIFJhbmRvbUFycmF5IGltcG9y
dCAqDQpmcm9tIExpbmVhckFsZ2VicmEgaW1wb3J0ICoNCmltcG9ydCBiaWdn
bGVzDQoNCiMgZ2VuZXJhdGUgdGhlIHNpZ25hbA0KDQppID0gaW5kaWNlcyA9
IGFyYW5nZSgxLDE2MikNCnggPSAtOCArIChpLTEpLzEwLjANCg0KYTAgPSAw
DQphMSA9IC0xMDANCmEyID0gMA0KYTMgPSAxDQoNCnogPSBhMCArIGExKngg
KyBhMip4KioyICsgYTMqeCoqMw0KDQojIGdlbmVyYXRlIE5vc2llDQoNClNp
Z21hID0gc3FydCgxMCkNCnYgPSBub3JtYWwoMCxTaWdtYSwxNjEpDQoNCiMg
Z2VuZXJhdGUgTm9pc3kgU2lnbmFsDQp5ID0geiArIHYNCg0KIyBnZW5lcmF0
ZSBzaWduYWwgd2l0aCBvdXRsaWVycw0KcmVwbGFjZSA9IHJhbmRpbnQoMSwx
NjEsMTcpDQoNCmZvciBpbmQgaW4gcmFuZ2UoMTcpOg0KICAgIHlbcmVwbGFj
ZVtpbmRdXSA9IHJhbmRvbSgpKjQwMA0KDQoNCiMgR2VuZXJhdGUgSA0KDQpI
ID0gemVyb3MoKDE2MSw0KSwnZmxvYXQnKTsNCmZvciBpbmQgaW4gcmFuZ2Uo
MTYxKToNCiAgICBIW2luZF0gPSBbMSwgeFtpbmRdLCB4W2luZF0qKjIsIHhb
aW5kXSoqM10NCg0KZGVmIHBpbnYoSCk6DQogICAgUiA9IG1hdHJpeG11bHRp
cGx5KGludmVyc2UobWF0cml4bXVsdGlwbHkodHJhbnNwb3NlKEgpLEgpKSx0
cmFuc3Bvc2UoSCkpDQogICAgcmV0dXJuIFINCg0KcEggPSBwaW52KEgpDQoN
CnRMUyA9IG1hdHJpeG11bHRpcGx5KHBILHRyYW5zcG9zZSh5KSk7DQp5SGF0
TFMgPSB0TFNbMF0rIHRMU1sxXSp4ICsgdExTWzJdKngqKjIgKyB0TFNbM10q
eCoqMw0KDQoNCmRlZiBhbmRyZXdTaW5lKGVzdEVycm9yKToNCiAgICBzaWdt
YSA9IHNxcnQoMTApDQogICAgYSA9IDMqc2lnbWEvcGkNCg0KICAgIGlmIGFi
cyhlc3RFcnJvcikgPD0gYSpwaToNCiAgICAgICAgcHNpID0gc2luKGVzdEVy
cm9yL2EpL2VzdEVycm9yDQogICAgZWxzZToNCiAgICAgICAgcHNpID0gMC4w
DQogICAgcmV0dXJuIHBzaQ0KDQojIGJ5IE0tZXN0aW1hdGlvbg0KDQojIFdl
aWdodCBtYXRyaXgNCg0KVyA9IGlkZW50aXR5KDE2MSwnZmxvYXQnKQ0KDQpV
ID0gbWF0cml4bXVsdGlwbHkoaW52ZXJzZShtYXRyaXhtdWx0aXBseShtYXRy
aXhtdWx0aXBseSh0cmFuc3Bvc2UoSCksVyksSCkpLHRyYW5zcG9zZShIKSkN
CnRoZXRhSGF0ID0gbWF0cml4bXVsdGlwbHkobWF0cml4bXVsdGlwbHkoVSxX
KSx0cmFuc3Bvc2UoeSkpDQoNCnlIYXQgPSB0aGV0YUhhdFswXSArIHRoZXRh
SGF0WzFdKnggKyB0aGV0YUhhdFsyXSp4KioyICsgdGhldGFIYXRbM10qeCoq
Mw0KZXN0RXJyb3IgPSAoeS15SGF0KQ0KDQpzdW1PZkVycm9ycyA9IHN1bShh
YnMoZXN0RXJyb3IpKQ0KaiA9IDANCnRvdGFsRXJyb3JzID0gW10NCg0KIyB1
cGRhdGUgbWF0cml4DQp3aGlsZSBzdW1PZkVycm9ycyA+IDFlLTg6DQogICAg
Zm9yIGluZCBpbiByYW5nZSgxNjEpOg0KICAgICAgICBXW2luZCxpbmRdID0g
YW5kcmV3U2luZShlc3RFcnJvcltpbmRdL1NpZ21hKQ0KICAgICAgICANCiAg
ICBVID0gbWF0cml4bXVsdGlwbHkoaW52ZXJzZShtYXRyaXhtdWx0aXBseSht
YXRyaXhtdWx0aXBseSh0cmFuc3Bvc2UoSCksVyksSCkpLHRyYW5zcG9zZShI
KSkNCiAgICB0aGV0YUhhdCA9IG1hdHJpeG11bHRpcGx5KG1hdHJpeG11bHRp
cGx5KFUsVyksdHJhbnNwb3NlKHkpKQ0KDQogICAgeUhhdCA9IHRoZXRhSGF0
WzBdICsgdGhldGFIYXRbMV0qeCArIHRoZXRhSGF0WzJdKngqKjIgKyB0aGV0
YUhhdFszXSp4KiozDQogICAgZXN0RXJyb3IgPSAoeS15SGF0KQ0KICAgIHRv
dGFsRXJyb3JzLmluc2VydChqLHN1bShhYnMoZXN0RXJyb3IpKSkNCg0KICAg
IGlmIGogPj0gMToNCiAgICAgICAgc3VtT2ZFcnJvcnMgPSBhYnMoKHRvdGFs
RXJyb3JzW2pdIC0gdG90YWxFcnJvcnNbai0xXSkvdG90YWxFcnJvcnNbal0p
DQogICAgICAgIA0KICAgIHByaW50ICctJyozMA0KICAgIHByaW50ICcnDQog
ICAgcHJpbnQgJ0l0ZXJhdGlvbiAjLi4uLi4uLi4uLi4uLi4uJyxqKzENCiAg
ICBwcmludCAnRXJyb3JzICAgIC4uLi4uLi4uLi4uLi4uLi4nLCBzdW1PZkVy
cm9ycw0KICAgIHByaW50ICdBbHBoYSAgLi4uLi4uLi4uLi4uLi4uLi4uLicN
CiAgICBwcmludCB0aGV0YUhhdA0KICAgIHByaW50ICcnDQogICAgcHJpbnQg
Jy0nKjMwDQogICAgaiA9IGorMQ0KDQoNCg0KDQojIHBsb3R0aW5nIHJvdXRp
bmVzDQoNCnAgPSBiaWdnbGVzLkZyYW1lZFBsb3QoKQ0KcC5mcmFtZTEuZHJh
d19ncmlkID0gMQ0KcC5mcmFtZTEudGlja2RpciA9IDANCnAuZnJhbWUyLmRy
YXdfZ3JpZCA9IDENCnAuYWRkKCBiaWdnbGVzLkN1cnZlKHgseSxjb2xvcj0n
Ymx1ZScpKQ0KcC5hZGQoIGJpZ2dsZXMuQ3VydmUoeCx5SGF0TFMsIGNvbG9y
PSdncmVlbicpKQ0KcC5hZGQoIGJpZ2dsZXMuQ3VydmUoeCx5SGF0LCBjb2xv
cj0ncmVkJykpDQpwLndyaXRlX2VwcygiY3VydmVzLmVwcyIpDQpwLnNob3co
KQ0KDQpxID0gYmlnZ2xlcy5GcmFtZWRQbG90KCkNCnEueHJhbmdlID0gMCwx
NjENCnEueXJhbmdlID0gMCwxDQpxLmFzcGVjdF9yYXRpbyA9IDENCmEgPSBi
aWdnbGVzLlBvaW50cyhpbmRpY2VzLEMsdHlwZT0nY2lyY2xlJykNCnEuYWRk
KGEpDQpxLndyaXRlX2Vwcygid2VpZ2h0cy5lcHMiKQ0KcS5zaG93KCkNCg==
---2098615039-2145140557-1032949669=:814238--