[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