zoukankan      html  css  js  c++  java
  • python 10day--python 的基本数据类型

    一、python的运算符

    1)算数运算符 

    加(+)、减(-)、乘(*)、除(/)、求余(%)、求商(//)、x的y次方(**)

    2)比较运算符

    等于(==)、不等于(!=、<>)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)

    3)赋值运算符

    直接 赋值(=)、加法赋值(c+=a,相当于c= c+a)、减法赋值(-=)、乘法赋值(*=)、除法赋值(/=)、求余赋值(%=)、求商赋值(//=)、x的y次方赋值(**=)

    4)逻辑运算

    and(与逻辑)、or(或逻辑)、not(非逻辑)

    5)成员运算

    in(如果x在y的序列中,返回true),not in (如果x不在y的序列中,返回true)

    二、python的基本数据类型

    1)数字:1

    int(整型)(python3取消了long int 长整形,所有都是int类型,python2里面有long int

      在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
      在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
    最重要的两种方法:
    number = 3
    v = int(num,base=2)
    v1 = num.bit_length() 当前数用多少位二进制表示

    2)布尔:TRUE FALSE 

    真或假

    1或 0

    3)字符串: “alex”

    在Python2中,普通字符串是以8位ASCII码进行存储的,而Unicode字符串则存储为16位unicode字符串,这样能够表示更多的字符集。使用的语法是在字符串前面加上前缀 u。在Python3中,所有的字符串都是Unicode字符串。

    字符串格式化:print ("我叫 %s 今年 %d 岁!" % ('小明', 10))

                             test = “i am  {name},age {a} ”

                             v = test.format(name = "alex",a = 18)

    字符串常用功能:
    • 移除空白   lstrip()和rstrip()分别是移除字符串左边的空格和右边的空格;str.strip([chars]);移除字符串头尾指定的字符
    • 分割  str.join(sequence)
    • 长度 len(str)
    • 索引 find()或者index() 
    • 切片 [1:4]

    4)列表   name_list = ['alex''seven''eric']

    基本操作:

    • 索引  name_list[0]
    • 切片  name_list[1:3]
    • 追加  name_list.append("linhaifeng")
    • 删除 del name_list[0],可以删除多个元素,pop和remove是删除单个元素,但是remove直接移除元素,pop是移除索引位置的元素
    • 长度 len(name_list)
    • 循环 for i in name_list:
    • 包含 in 或者 contains

    5)元组  ages = (1122334455,) 不可以修改,元组的二级元素可以修改,写元组的时候后面多加个逗号

    基本操作:
    • 索引 ages[[1]
    • 切片ages[1:3]
    • 循环for i in ages
    • 长度len(ages)
    • 包含in 或者contains

    6)字典(无序)   dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}

    • 索引  靠key进行索引,dict["Alice"],   dict.get("Alice")进行索引,没有值的话返回None
    • 新增  dict.update({"k1":"v1"})
    • 删除 del ["Alice"]
    • 键、值、键值对
    • 循环  默认循环是对key进行循环,keys是对键进行循环,values是对值进行循环,items是对键值进行循环
    • 长度

    7)集合 (最重要的的功能就是去重,是一个无序的不重复元素序列。)

     basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}

    a = set('abracadabra')     输出结果:{'a', 'r', 'b', 'c', 'd'}

    三、for 循环:用户按照顺序循环可迭代对象中的内容

    1)简单的列表迭代

    li = [11,22,33,44]

    for item in li:
        print item
    2)enumrate  为可迭代的对象添加序号
    li = [11,22,33]
    for k,v in enumerate(li, 1):
        print(k,v)
    3)range和xrange
    指定范围,生成指定的数字
    print range(110)
    # 结果:[1, 2, 3, 4, 5, 6, 7, 8, 9]
     
    print range(1102)
    # 结果:[1, 3, 5, 7, 9]
     
    print range(300-2)
    # 结果:[30, 28, 26, 24, 22, 20, 18, 16, 14, 12, 10, 8, 6, 4, 2]
    四、day10作业:

    一、元素分类

    有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
    即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}

    二、查找
    查找列表中元素,移除每个元素的空格,并查找以 a或A开头 并且以 c 结尾的所有元素。
        li = ["alec", " aric", "Alex", "Tony", "rain"]
        tu = ("alec", " aric", "Alex", "Tony", "rain") 
        dic = {'k1': "alex", 'k2': ' aric',  "k3": "Alex", "k4": "Tony"}
     
    三、输出商品列表,用户输入序号,显示用户选中的商品
        商品 li = ["手机", "电脑", '鼠标垫', '游艇']
     
    四、购物车

    功能要求:

    • 要求用户输入总资产,例如:2000
    • 显示商品列表,让用户根据序号选择商品,加入购物车
    • 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
    • 附加:可充值、某商品移除购物车
    1
    2
    3
    4
    5
    6
    goods = [
        {"name""电脑""price"1999},
        {"name""鼠标""price"10},
        {"name""游艇""price"20},
        {"name""美女""price"998},
    ]

     五、用户交互,显示省市县三级联动的选择

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    dic = {
        "河北": {
            "石家庄": ["鹿泉""藁城""元氏"],
            "邯郸": ["永年""涉县""磁县"],
        }
        "河南": {
            ...
        }
        "山西": {
            ...
        }
     
    }
  • 相关阅读:
    Using AlloyTouch to control three.js 3D model
    AlloyTouch与three.js 3D模型交互
    移动Web触摸与运动解决方案AlloyTouch开源啦
    transformjs玩转星球
    swing with transformjs
    和transformjs一起摇摆
    getting started with transformjs
    移动Web利器transformjs入门
    腾讯AlloyTeam移动Web裁剪组件AlloyCrop正式开源
    Why AlloyFinger is so much smaller than hammerjs?
  • 原文地址:https://www.cnblogs.com/yuzhiboyou/p/10044915.html
Copyright © 2011-2022 走看看