zoukankan      html  css  js  c++  java
  • python条件语句

    python条件语句

    目录:

    1.分支语句(if……else……)

    2.循环(for,while,嵌套循环)  #for用在已知循环次数  while用在不确定循环次数和死循环

    3.控制循环(break,continue,else)  #break:跳出整个循环 continue:跳出本次循环,继续下一次循环   else:与break配合使用,循环执行完才能执行else,否则不执行else里面的语句

    1.if……else……

    1.输入一个ip地址,ping ip地址,判断操作系统的类型

    方法一:

    #输入一个ip地址,ping ip地址,判断操作系统的类型
    import
    os ip=input("请输入一个ip地址:") res=os.popen("ping %s" %ip).read() #print(res) start1=res.find("TTL") end1=res.find(" ",start1) ttl=res[start1:end1] #print(ttl) if res.find("TTL")>0: #如果找到则返回对应的下标,找不到返回-1 tt=int(ttl[4:]) if tt>64 and tt<=128: print("%s地址所在的操作系统类型为windows" %ip) elif tt<=64: print("$s地址所在的操作系统类型为linux" %ip) else: print("$s地址所在的操作系统类型未知" %ip) else: print("icmp协议被防火墙拦截或者目标不可达!")

    方法二:

    #输入一个ip地址,ping ip地址,判断操作系统的类型

    ip=input("请输入一个ip:")
    ipStr=os.popen("ping %s"%ip).read()
    len=ipStr.find("T")
    ttlStr=ipStr[ipStr.find("T"):ipStr.find("
    ",len)]
    if ttlStr=="":
        print("ping失败")
        sys.exit(0) #退出程序,后面的程序不再执行
      
    print("截取后:")
    print(ttlStr)
    ttlInt=int(ttlStr.split("=")[1])
    print(ttlInt)
    if ttlInt <=64:
        print("此系统Linux系统")
    else:
        print("此系统Windows系统")

    2.循环(for,while,嵌套循环)

    2.例:字幕滚动

    方法一:

    #字幕滚动
    import time
    zimu=input("请输入一段话:")
    i=0
    while True:
        dis=zimu[i:]+zimu[:i]
        i+=1
        print(dis,flush=True,end="")  #flush=true不要缓存,实时刷新    end=""实现不换行
        time.sleep(1)   ##执行完上面三行,睡 1 秒
        print("
    ",end="",flush=True)   #'
    ',回车,使内容顶格出现
        i%=len(zimu)    ##使其能够循环播放

    方法二:

    #字幕滚动
    import
    time str1=input("请输入一段话:") i=0 while True: if i == len(str1): i=0 print(str1[i:],str1[:i],end=" ",flush=True) i+=1 time.sleep(1)

    方法三:

    
    
    #字幕滚动
    import time
    s=input('输入一段话:')
    while 1:
        f=input("滚动方向(L/R):").upper()
        if f in ['L','R']:
            break
        print("输入有误")
    while 1:
        t=input("滚动速度(输入整数):")
        if t.isnumeric():
            break
        print("输入有误")
    while 1:
        if f=='L':
            s=s[1:]+s[0]
        else:
            s=s[-1]+s[:-1]
        print('
    '+s,end='',flush=True)
        time.sleep(int(t))

    方法四:

    
    
    #字幕滚动
    import time
    line = input("请输入一段话:")
    a=input("请输入左右(zy)")
    if a == "z":
        while 1:
            line = line[1:]+line[0]
            print('
    '+line,flush=True,end='')
            time.sleep(1)
    elif a == "y":
        while 1:
            line = line[-1]+line[:-1]
            print('
    '+line,flush=True,end='')
            time.sleep(1)
    else:
        print("您输入有误")

    2.例:获得本机所有网卡以及对应的ip地址

    #for  打印出本机所有网卡以及对应的ip地址
    import os
    print("for循环的用法:".center(60,"*"))
    inf=os.popen("ipconfig/all").read()
    #print(str)
    print("一共有%d个网卡"%inf.count("适配器"))
    ilist=inf.split("适配器")[1:]
    #print(str2)
    #for i in ilist:
    #    print(i)
    print("%s%44s"%("网卡名称","IP地址")) 
    for nic in ilist:
        nlist=nic.split("
    ")
        name=nlist[0].strip()[:-1]
        flag=nic.find("IPv4")
        if flag<0:
            addr="网络未连接!"
        else:
             addr=nlist[8].split(":")[1].strip()
             addr=addr.rstrip("(首选)")
        print("{0:40s}	{1:s}".format(name,addr))
    
    print("while循环的用法:".center(60,"*"))
    i=0
    print("%s%16s%38s"%("索引","网卡名称","IP地址"))
    while i<len(ilist):
        net=ilist[i]
        netList=net.split("
    ")
        name=netList[0].strip()[:-1]
        ipLine=netList[8].strip()
        if ipLine.startswith("IPv4"):
            addr=ipLine[ipLine.find(":")+2:]
            addr=addr.rstrip("(首选)")
        else:
            addr="网络未连接!"
        i+=1
        #print(i,name.ljust(10),addr.rjust(25),sep="		")
        print("{0:d}	{1:40s}	{2:s}".format(i,name,addr))

    运行效果如下:

    3.控制循环(break,continue,else)

    else:与break配合使用,循环执行完才能执行else,否则不执行else里面的语句

    #else 
    print("else的用法:".center(30,"*"))
    for i in range(3):
        score=float(input("请输入分数:"))
        if score<60:
            print("需要补考")
            break
    else:
        print("全部通过")

     continue:跳出本次循环,继续下一次循环

    #continue  打印0~20之间的偶数
    print("continue的用法:".center(30,"*"))
    for i in range(0,21):
        if i%2!=0:
            continue
        else:
            print(i)

    break:跳出整个循环

    例:输入一个ip,判断是否合法

    方法一:

    #输入一个ip,判断是否合法
    #
    break: print("break的用法".rjust(30,"-")) while True: ipxx=input("输入一个IP:") ipw=ipxx.split(".") if len(ipw)==4: for i in range(4): if ipw[i].isdigit(): if not(0<=int(ipw[i])and int(ipw[i])<=255): print("IP输入错误,请重新输入") break else: print("IP输入错误,请重新输入") break else: break else: print("IP输入错误,请重新输入") print("输入正确,你输入的IP是:",ipxx)

    方法二:

    #********嵌套循环做*****
    while True:
        ip=input("请输入一个ip地址:")
        list1=ip.strip().split(".")
        v=0
        if len(list1)==4:
            for i in list1:
                if i.isdigit() and (int(i)>=0 and int(i)<=255):
                    v=1
                else:
                    v=0
                    print("IP地址无效请重新输入!")
                    break
        else:
            print("IP地址无效请重新输入!")
        if v==1:
            print("ip地址是:",ip)
            break            

    方法三:

    #for循环做
    ip=input("请输入一个ip地址:") list1=ip.strip().split(".") v=0 for i in list1: if len(list1)==4: if i.isdigit() and (int(i)>=0 and int(i)<=255): v=1 else: v=0 print("输入的ip地址无效") break else: print("输入的ip地址无效!") break if v==1: print("ip地址是:",ip)
  • 相关阅读:
    蓝屏代码stop:0X000000EA(0X85E286B8,0X8635F210,0XF7A53CBC,0X00000001)
    SAP HR 复制PA30的人员
    ABAP OO 开发语法整理
    ABAP制作密码输入框
    Basis 基础
    Excel 文件下载
    SAP 锁机制
    SE16传输配置表数据
    FastAdmin bootstrap-table 分页手动输入跳转
    FastAdmin 的 url 有一个 ref=addtabs 是怎么添加的?
  • 原文地址:https://www.cnblogs.com/yuzly/p/10306568.html
Copyright © 2011-2022 走看看