我是Python的新手,我想知道是否有一种方法可以使用基于数字模式的条件语句.例如,如果我有一个数值列表,例如:
583201
584068
485027
581047
Run Code Online (Sandbox Code Playgroud)
我正在根据这些数字向变量"x"输出一个值,如何将值1分配给以"58"开头的所有值?
我试过这个:
import re
def Classify(SIC12):
if re.search(7389*,SIC12):
return 1
else:
return 0
Run Code Online (Sandbox Code Playgroud)
但看起来搜索功能仅适用于字符串.有没有办法做这样的事情?
您需要使用str()将数字转换为字符串:
def classify(number):
num_str = str(number)
if num_str.startswith("58"):
return 1
return 0
Run Code Online (Sandbox Code Playgroud)
对于更复杂的测试用例,您可能需要使用正则表达式,但是如果没有它们,您可以完成特定的示例(不确定这是否更可取).
编辑:删除了一些非常不合适的分号.
| 归档时间: |
|
| 查看次数: |
128 次 |
| 最近记录: |