zoukankan      html  css  js  c++  java
  • 集合与条件、循环语句

    集合

    集合是一个无序的,不重复的数据组合,它的主要作用如下:

    • 去重,把一个列表变成集合,就自动去重了
    • 关系测试,测试两组数据之前的交集、差集、并集等关系

    集合操作符和关系符号:

    常用操作

    s = set([3,5,9,10])      #创建一个数值集合  
      
    t = set("Hello")         #创建一个唯一字符的集合  
    
    
    a = t | s          # t 和 s的并集  
      
    b = t & s          # t 和 s的交集  
      
    c = t – s          # 求差集(项在t中,但不在s中)  
      
    d = t ^ s          # 对称差集(项在t或s中,但不会同时出现在二者中)  
      
       
      
    基本操作:  
      
    t.add('x')            # 添加一项  
      
    s.update([10,37,42])  # 在s中添加多项  
      
       
      
    使用remove()可以删除一项:  
      
    t.remove('H')  
      
      
    len(s)  
    set 的长度  
      
    x in s  
    测试 x 是否是 s 的成员  
      
    x not in s  
    测试 x 是否不是 s 的成员  
      
    s.issubset(t)  
    s <= t  
    测试是否 s 中的每一个元素都在 t 中  
      
    s.issuperset(t)  
    s >= t  
    测试是否 t 中的每一个元素都在 s 中  
      
    s.union(t)  
    s | t  
    返回一个新的 set 包含 s 和 t 中的每一个元素  
      
    s.intersection(t)  
    s & t  
    返回一个新的 set 包含 s 和 t 中的公共元素  
      
    s.difference(t)  
    s - t  
    返回一个新的 set 包含 s 中有但是 t 中没有的元素  
      
    s.symmetric_difference(t)  
    s ^ t  
    返回一个新的 set 包含 s 和 t 中不重复的元素  
      
    s.copy()  
    返回 set “s”的一个浅复制
    View Code

    条件语句

      如果if条件(在fi和冒号之间的表达式)为真,执行后面的语句块;如果为假,则执行else后面的语句块:

    import getpass
    
    user_name='Li'
    pass_word=("123")
    
    username=input("username;")
    password=getpass.getpass("password:")
    
    if user_name==username and pass_word==password:
        print("Welcome {name} to login...".format(name=user_name))
    else:
        print("Invalid username or password")
    View Code

      如果要检查多个条件,就可以使用elif:

    #猜数字 范围1-10
    num=6
    
    guess=int(input('Please input your guess num:'))
    if guess>num:
        print('bigger!')
    elif guess<num:
        print("smaller!")
    else:
        print("You done a great job!")
    View Code

    循环

    continue:跳出当前循环,进入下一轮循环

    break:结束(跳出)循环

    while循环

    #猜数字 范围1-10  超过三遍自动退出
    num=6
    count=0 #添加一个计数器
    while count<3:
        guess=int(input('please input your guess:'))
        count += 1
        if 0<guess<11:
            if guess>num:
                print('bigger!')
            elif guess<num:
                print("smaller!")
            else:
                print("You done a great job!")
                break
        else:
            print('over the range!')
    else:
        print('你的机会以用完!')
    View Code

    for循环

      while语句非常灵活。它可以用来在任何条件为真的情况下重复执行一个代码块,但当要为一个集合(序列和其他可迭代对象)的每个元素都执行一个代码块时,我们就要用到for循环了。

     for i in range(10):
        if i%2==0:
            print(i)
    
            
    0
    2
    4
    6
    8    
    View Code

    enumerate: 

      枚举为可迭代的对象添加序号

    list=[1,3,5,6,7]
    for k,v in enumerate(list,1): #从1开始
        print(k,v)
    View Code
  • 相关阅读:
    HTML_严格模式与混杂模式
    不要和一种编程语言厮守终生:为工作正确选择(转)
    iOS开发编码建议与编程经验(转)
    UTF-8 和 GBK 的 NSString 相互转化的方法
    UICollectionView 总结
    UIViewController的生命周期及iOS程序执行顺序
    objective-c 中随机数的用法
    clipsToBounds 与 masksToBounds 的区别与联系
    网络请求 代码 系统自带类源码
    iOS CGRectGetMaxX/Y 使用
  • 原文地址:https://www.cnblogs.com/freely/p/6285981.html
Copyright © 2011-2022 走看看