如何在两种可能性之间用“或”分隔的字符串上运行50/50概率表达式?

2024-04-25 00:44:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在制作一个geodataframe(熊猫),其中包含社交媒体用户及其家乡的信息。该栏及其所在城市有524个城市。其中453个城市有两个市镇,其形式为线串'City1 or City2'

two_cities = [s for s in gdf['home_municipality'] if " or " in s]
print(two_cities)

到目前为止,我已经用上面的代码创建了一个列表,其中只包含带有“or”的值。我的问题是,;我如何在列表项上随机选择一个城市分配给每个用户,以50/50的概率运行

以下是列表项的一个片段:

['Vaasa or Mustasaari', 'Helsinki or Espoo', 'Vantaa or Turku', 'Helsinki or Espoo', 'Paimio or Turku', 'Turku or Helsinki', 'Helsinki or Espoo']

Tags: or用户in信息列表媒体社交two
1条回答
网友
1楼 · 发布于 2024-04-25 00:44:53

以其中一个字符串'Vaasa or Mustasaari'为例,您可以将其转换为两个城市的列表,然后使用^{}随机选择一个介于0和1之间的整数,并将其用作城市从列表中获取的索引。因为只有两个整数是可能的,这相当于50/50的机会

import random

city_string = 'Vaasa or Mustasaari'
cities = city_string.split(' or ')
user_city = cities[random.randint(0, 1)]
print(user_city)

产出:

>>> user_city = cities[random.randint(0, 1)]
>>> print(user_city)
Mustasaari
>>> user_city = cities[random.randint(0, 1)]
>>> print(user_city)
Vaasa

相关问题 更多 >