You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Django中如何用Python提取数据库内‘国家-城市’字符串的城市部分

Python提取“国家-城市”字符串中的城市部分

以下是几种实用的实现方法:

方法1:使用split()方法

这是最直观的方式,通过split('-')将字符串按-分割为列表,取索引为1的元素即可得到城市部分:

location = "Italy-Milan"
city = location.split('-')[1]
print(city)  # 输出:Milan

如果字符串中可能包含多个-,可以指定分割次数为1,确保后续内容完整保留:

location = "USA-New York"
city = location.split('-', 1)[1]
print(city)  # 输出:New York

方法2:使用rfind()配合切片

先通过rfind('-')找到最后一个-的位置,再从该位置的下一位开始截取字符串:

location = "France-Paris"
dash_pos = location.rfind('-')
city = location[dash_pos + 1:]
print(city)  # 输出:Paris

这种方法适合需要提取最后一个-之后内容的场景,避免中间-干扰。

方法3:使用正则表达式(灵活匹配)

如果需要处理格式不规范的字符串,可借助re模块实现精准匹配:

import re

location = "Germany-Berlin"
match_result = re.search(r'-(.*)$', location)
if match_result:
    city = match_result.group(1)
    print(city)  # 输出:Berlin

该正则表达式会匹配-之后的所有内容,即使后续包含特殊字符也能正确提取。

内容的提问来源于stack exchange,提问作者user19069531

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 21:24:26