[Tutor] Script Crashing in Windows 2000

Alan Trautman ATrautman@perryjudds.com
Wed, 16 Oct 2002 13:17:09 -0500


Brian,

Are you converting the Linux/Unix file format to Windows. i.e. \n the \r\n.
The is a Unix to windows converter on your Linux box if you did the default
install. It could be improper line termination causing it to fail on any
windows box.

Alan

-----Original Message-----
From: Brian Moorman [mailto:ironman7@tbaytel.net]
Sent: Wednesday, October 16, 2002 10:03 AM
To: Python Tutor
Subject: [Tutor] Script Crashing in Windows 2000


I've written a python script for a fantasy hockey league I'm in, and I'm
using Python 2.1 on Mandrake Linux 8.2.  I have a friend who downloaded
Python 2.2 on his Windows 2000 and when he runs the script, it 'crashes'
after he enters a search criteria and hits enter.  The whole screen
disappears.  I'm hoping if I include the section of code I have
questions about that someone could offer advice. The following script is
stored in the same directory as two text files, "fwfha_skaters.txt" and
"fwfha_goalies.txt" and the script works well on my computer.  If
someone could tell my why it isn't working on Windows I'd be grateful.

Brian Moorman


#!/usr/bin/python

from string import *

def skater_db(search_data):
        # Header list for database results
        print "NAME" + (" " * (21 - len("NAME"))),
        print "POS" + (" " * (5 - len("POS"))),
        print "GP" + (" " * (3 - len("GP"))),
        print "MP" + (" " * (3 - len("MP"))),
        print "D/C" + (" " * (3 - len("D/C"))),
        print "N" + (" " * (3 - len("N"))),
        print "P" + (" " * (3 - len("P"))),
        print "S" + (" " * (3 - len("S"))),
        print "D" + (" " * (3 - len("D"))),
        print "SH" + (" " * (3 - len("SH"))),
        print "PC" + (" " * (3 - len("PC"))),
        print "IF" + (" " * (3 - len("IF"))),
        print "PN" + (" " * (3 - len("PN"))),
        print "IN" + (" " * (3 - len("IN"))),
        print "RT" + (" " * (3 - len("RT"))),
        print "HI" + (" " * (3 - len("HI"))),
        print "HP" + (" " * (3 - len("HP"))),
        print "VP" + (" " * (3 - len("VP"))),
        print "PK" + (" " * (3 - len("PK"))),
        print "EXTRAS"
        data = open("fwfha_skaters.txt", "r")
        for player in data.readlines():
                player_split = player.split()
                player_split[0] = player_split[0][:-1]  # To remove the
trailing comma after last name
                if search_data in player_split and player_split[0] !=
"NAME":
                        print player_split[0] + ", " + player_split[1] +
(" " * (20 - len(player_split[0] + " " + player_split[1]))),
                        print player_split[2] + (" " * (5 -
len(player_split[2]))),
                        print player_split[3] + (" " * (3 -
len(player_split[3]))),
                        print player_split[4] + (" " * (3 -
len(player_split[4]))),
                        print player_split[5] + (" " * (3 -
len(player_split[5]))),
                        print player_split[6] + (" " * (3 -
len(player_split[6]))),
                        print player_split[7] + (" " * (3 -
len(player_split[7]))),
                        print player_split[8] + (" " * (3 -
len(player_split[8]))),
                        print player_split[9] + (" " * (3 -
len(player_split[9]))),
                        print player_split[10] + (" " * (3 -
len(player_split[10]))),
                        print player_split[11] + (" " * (3 -
len(player_split[11]))),
                        print player_split[12] + (" " * (3 -
len(player_split[12]))),
                        print player_split[13] + (" " * (3 -
len(player_split[13]))),
                        print player_split[14] + (" " * (3 -
len(player_split[14]))),
                        print player_split[15] + (" " * (3 -
len(player_split[15]))),
                        print player_split[16] + (" " * (3 -
len(player_split[16]))),
                        print player_split[17] + (" " * (3 -
len(player_split[17]))),
                        print player_split[18] + (" " * (3 -
len(player_split[18]))),
                        print player_split[19] + (" " * (3 -
len(player_split[19]))),
                        player_join = " ".join(player_split[20:])
                        print player_join
        data.close()


def goalie_db(search_data):
        # Header list for database results
        print "NAME" + (" " * (21 - len("NAME"))),
        print "POS" + (" " * (5 - len("POS"))),
        print "GP" + (" " * (5 - len("GP"))),
        print "MP" + (" " * (5 - len("MP"))),
        print "IRSV%" + (" " * (6 - len("IRSV%"))),
        print "PC" + (" " * (5 - len("PC"))),
        print "RB" + (" " * (5 - len("RB")))
        data = open("fwfha_goalies.txt", "r")
        for player in data.readlines():
                player_split = player.split()
                player_split[0] = player_split[0][:-1]
                if search_data in player_split and player_split[0] !=
"NAME":
                        print player_split[0] + ", " + player_split[1] +
(" " * (20 - len(player_split[0] + " " + player_split[1]))),
                        print player_split[2] + (" " * (5 -
len(player_split[2]))),
                        print player_split[3] + (" " * (5 -
len(player_split[3]))),
                        print player_split[4] + (" " * (5 -
len(player_split[4]))),
                        print player_split[5] + (" " * (6 -
len(player_split[5]))),
                        print player_split[6] + (" " * (5 -
len(player_split[6]))),
                        print player_split[7] + (" " * (5 -
len(player_split[7])))
        data.close()

# Main program
print "\n"*50
print "FWFHA Player Database"
print "-" * 21
print
print "Please select which database to search:."
print "1.  Skaters"
print "2.  Goaltenders"

player_query = raw_input("Choose a database: ")
print

if player_query == "1":
        player_info = raw_input("Enter a search criteria, such as first
name, last name, or special rating: ")
        skater_db(player_info)
elif player_query == "2":
        player_info = raw_input("Enter a search criteria, such as first
name or last name: ")
        goalie_db(player_info)

_______________________________________________
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor