繁体   English   中英

如何使用.find 打印名称

[英]how to print a name using .find

地点名称

我需要希腊才能成为希腊

问题是这样的:

position = location.find(":")

.find()在未找到该事物时返回-1 ,就像您的“GREECE”条目一样。 你的下一行,

region_split = location[:position]

将字符串切片到该索引,但不包括该索引。 由于索引-1指的是字符串的最后一个字符,因此它需要除最后一个字符之外的所有字符。


最简单的解决方案是放入一个特殊情况:

position = location.find(":")
region_split = location[:position] if position >= 0 else location[:]

但更有趣的方法是使用模数:

position = location.find(":") % (len(location) + 1)
region_split = location[:position]

如果找到':'则不会影响position (因为它总是小于len(location) ,但如果找不到':' ,则-1 % len(location) + 1精确计算字符串的长度location ,因此无论如何您都可以使用以下切片捕获整个字符串。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM