使用\ s或'\n'进行re.search找不到我正在尝试搜索的多行.
来源部分:
Date/Time:
2013-08-27 17:05:36
----- BEGIN SEARCH -----
GENERAL DATA:
NAME: AB12
SECTOR:
999,999
CONTROLLED BY: Player
ALLIANCE: Aliance
ONLINE: 1 seconds ago
SIZE: Large
HOMEWORLD: NO
APPROVAL RATING: 100%
PRODUCTION RATE: 100%
RESOURCE DATA:
POWER: 0 / 0
BUILDINGS: 0 / 20
ORE: 80,000 / 80,000
CRYSTAL: 80,000 / 80,000
POPULATION: 40,000 / 40,000
BUILDING DATA:
N/A
UNIT DATA:
WYVERN(S): 100
----- END SEARCH -----
Run Code Online (Sandbox Code Playgroud)
在Notepad ++中查看它我看到"BUILDING DATA:(LF)"
完整代码
lines = open('scan.txt','r').readlines()
for a in lines:
if …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用这段代码来确定基于距离恒星距离的行星类型,并且唯一一个它将打印出来的信息是地球行星.
如果我在第三个if语句之前打印行星类型它将打印它选择的所有行星类型,但它似乎贯穿的唯一if语句是"如果planet_type是"terraform":
for distance in (a):
while True:
random_x = random.randint(-distance,distance)
random_y = random.randint(-distance,distance)
if(random_x <distance and random_x >-distance and random_y <distance and random_y >-distance):
continue
else:
print "Creating planets"
time.sleep(.5)
print distance
if star_size*100 >= distance:
possible_planet_type = ('mineral' , 'gas', 'organic', 'terraform', 'ice')
planet_type = random.choice(possible_planet_type)
if planet_type is "mineral":
planet_diameter = random.randint(3000,8000)
iron = planet_diameter*random.randint(10,100)
carbon = planet_diameter*random.randint(5,50)
oxygen = planet_diameter*random.randint(0,0)
h2o = planet_diameter*random.randint(0,1)
deuterium = planet_diameter*random.randint(0,5)
helium_3 = planet_diameter*random.randint(0,2)
print planet_type, planet_diameter, iron, carbon, oxygen, h2o, …Run Code Online (Sandbox Code Playgroud)