繁体   English   中英

蟒蛇。 号码插入

[英]Python. Number inserting

试图制作一个程序说,当它是爱沙尼亚邮政编码时。 爱沙尼亚邮政编码有5个数字。 第一个数字在1到9之间。其他四个数字在0到9之间。我的代码目前:

print("insert postcode")
    inserted_code = input()

if (inserted_code[0] > "0" and inserted_code[1-4] >= "0"):

    print("Estonian postcode")

elif (inserted_code[0] == "0"):

    print("Not an estonian code")

else:
    print("Not an estonian code")

我的问题是,该程序知道爱沙尼亚邮政编码中有5个数字,该怎么做呢?

我建议你这样做:

  1. 使用input("text")而不是在每个input()之前print说明
  2. inserted_code[1:]代表除第一个之外的每个字符
  3. 请检查代码长度是否等于5个字符。
  inserted_code = input("insert postcode") if int(inserted_code[0]) > 0 and all([int(last_num) >= 0 for last_num in inserted_code[1:]]) and len(inserted_code) == 5: print("Estonian postcode") else: print("Probably, Belarusian code") 

最简单的方法是匹配特殊的正则表达式 - 邮政编码应匹配的模板。

    inserted_code = input("insert postcode")
    import re
    if re.match('^[1-9][0-9]{4}$', inserted_code): 
       print("Estonian postcode")
    else:
       print("Not an estonian code")

暂无
暂无

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

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