• python3


    list和tuple

    list 像是链表和数组的集合体,既能随机访问,又能添加,删除

    classmates=['小明','小红']
    print(classmates)  #['小明', '小红']
    print(len(classmates)) #2 ,len可以获取list中的元素个数
    print(classmates[0],classmates[1]) #随机访问
    print(classmates[-2],classmates[-1]) #倒着访问
    classmates.append('小李') #追加元素
    print(classmates)  #['小明', '小红', '小李']
    classmates.insert(1,'sany')  #插入到指定位置
    print(classmates)  #['小明', 'sany', '小红', '小李']
    classmates.pop() #删除list末尾元素
    print(classmates) #['小明', 'sany', '小红']
    classmates.pop(1)#删除指定位置元素
    print(classmates) #['小明', '小红']
    classmates[1]='sunny' #可以直接访问修改
    print(classmates)
    classmates.append(100) #list里面的数据类型可以不同
    print(classmates) #['小明', 'sunny', 100]
    ls=[100,classmates] #list里面的元素可以是另一个list
    print(ls) #[100, ['小明', 'sunny', 100]]
    print(len(ls)) #2
    print(ls[1][1],classmates[1])#ls可以看成是二维数组,sunny sunny
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21

    tuple,不能变的list,所以那些可变方法都没有

    tuple中只有一个元素时,必须加,消除歧义(防止被认为是小括号)

    tt=('xi',)
    print(tt)
    
    • 1
    • 2

    tuple中可以含有list,list的内容可变。但与tuple不可变不冲突,不变的是必须指向同一个list

    tt=('xi','do')
    tt[0]='ss'
    print(tt)#因为被修改了,所以会报错
    
    • 1
    • 2
    • 3

    条件判断

    age=19
    if (age>20):#条件+冒号
        print(age)
    elif age==19: # elif 用法和if相同
        print('sssss')
    else:     #else直接冒号
        print(age,"dddd")
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    birth=input('birth:')#input返回的为str型
    birth=int(birth)#强转为int
    if birth>20:
        print("adult")
    else:
        print("young")
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    循环

    1. for-in

      nums=['2','30','44']
      for num in nums:
          print(num)
      '''
      2
      30
      44
      '''
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8

      range(5) 生成0-4的序列

      list(range(5)) 将这个生出的序列转化为列表

      sum=0
      for x in range(101):
          sum+=x
      print(sum) #5050
      
      • 1
      • 2
      • 3
      • 4
    2. while 循环

    n=100
    sum2=0
    while n>0:
        sum2+=n
        n-=1
    print(sum2)#5050
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    break 退出循环

    n=1
    while n<=100:
        if n>10:
            break #n=11时,结束循环
        print(n)
        n+=1
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    continue 跳过本轮循环

    n=1
    while n<=100:
        n += 1
        if n>10:
            break #n=11时,结束循环
        if n%2==0:
            continue #跳过本次循环
        print(n)
        
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    dict和set

    dict对应 hashmap,无序

    dict 的key必须是不可变对象,字符串,整数都可以

    dict={'michael':95,'math':64,'lang':99} #初始化,大括号,冒号值,逗号分隔
    dict['Eng']=200 #通过key放入value
    print(dict)  #{'michael': 95, 'math': 64, 'lang': 99, 'Eng': 200}
    
    if 'tomas' in dict: #判断key是否存在
        print(True)
    else:
        print(False)
    
    if dict.get("Tomas",-1)==-1:  #get判断key存不存在,不存在返回默认值
        print('key不存在')
    dict.pop('math') #删除一个key
    print(dict)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    set 类似于hashset,key不能重复,无序,需要为不可变对象

    用一个list初始化

    nums=['2','30','44']
    myset=set(nums)
    print(myset)
    myset.add('2') #添加key
    myset.add(3)
    print(myset)
    myset.remove(3)#删除key
    print(myset)
    s2=set(['2','44','55'])
    print(myset&s2)#取交集,{'2', '44'}
    print(myset|s2)#取并集,{'2', '30', '55', '44'}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    对于不变对象来说,调用对象自身的任意方法,也不会改变该对象自身的内容。相反,这些方法会创建新的对象并返回,这样,就保证了不可变对象本身永远是不可变的。

  • 相关阅读:
    大语言模型LLM分布式训练:TensorFlow下的大语言模型训练实践(LLM系列05)
    3、Elasticsearch功能使用
    Liquibase-数据库脚本版本管理控制
    微信网页授权回调地址放多个参数的方法
    Windows搭建MQTT服务器
    3D模型格式转换工具HOOPS Exchange助力SIMCON搭建注塑项目
    x210项目重新回顾之八自己写启动代码
    01- ROS初识
    C++——vector模拟实现
    CTFHub技能树web之XSS
  • 原文地址:https://blog.csdn.net/wtyttdy/article/details/125554430