• 初识Python.day2


     

    一. python运算符

    算数运算符

     比较运算符

    赋值运算符

    逻辑运算符

    成员运算符

    二. Python基础数据类型

    1. python字符串总结

      1 # 首字母变大写
      2 # a1 = "jiuya"
      3 # print(a1.capitalize())
      4 
      5 # # 内容居中,
      6 # a1 = "jiuya"
      7 # ret = a1.center(20,'*')
      8 # print(ret)
      9 
     10 # 计算字符串中的子序列个数
     11 # a1 = "my name is mike"
     12 # # ret = a1.count("m")
     13 #   # 制定范围子序列个数
     14 # ret = a1.count("m",0,6)
     15 # print(ret)
     16 
     17 # 判断是否以什么结尾,支持子序列是否以什么结尾.获取大于等于0,小于2的位置
     18 # a1 = "hello"
     19 # ret = a1.endswith('o')
     20 # ret2 = a1.endswith('e',0,2)
     21 # print(ret2)
     22 
     23 # # 判断是否以什么开头,
     24 # a1 = "alex"
     25 # ret = a1.startswith('a')
     26 # print(ret)
     27 
     28 # 制表符,	代表一个tab键
     29 # find查找,找到返回找到的位置,找不到返回-1
     30 # s = "alex hello"
     31 # print(s.find("b"))
     32 
     33 # 字符串的格式化,只能从开始,按照顺序更新
     34 # s = "hello {0},age {1}"
     35 # print(s.format('jiu',23))
     36 
     37 # 寻找子序列的位置,如果没有找到则报错
     38 #  index
     39 
     40 # # 判断是否都是字母
     41 # a1 = "jiu"
     42 # print(a1.isalpha())
     43 #
     44 # # 判断是否都是数字
     45 # a1 = "123"
     46 # print(a1.isalnum())
     47 #
     48 # # 判断是否都是小写
     49 # a1 = "jiu"
     50 # print(a1.islower())
     51 #
     52 # # 判断是否都是大写
     53 # a1 = "JIU"
     54 # print(a1.isupper())
     55 #
     56 # # 判断是否是标题,首字母大写
     57 # a1 = "Jiu"
     58 # print(a1.istitle())
     59 #
     60 # # 连接,join.循环每个元素,通过特殊符号连接
     61 # li = ["jiu","ya","chun"]
     62 # s = "*".join(li)
     63 # print(s)
     64 #
     65 # # 去除空格
     66 # s = " alex "
     67 # # 左边去空格:new = s.lstrip()
     68 # # 右边去空格:new = s.rstrip()
     69 # # 两边去空格:new = s.strip()
     70 #
     71 # # 分割,指定分隔符分割,添加到一个元祖中
     72 # # 默认从左往右,rpartition从右往左找
     73 # s = "alex SB alex"
     74 # ret = s.partition('SB')
     75 # print(ret)
     76 #
     77 # # 替换,从左往右替换几次
     78 # s = "alex SB alex"
     79 # ret = s.replace("al","BB",1)
     80 # print(ret)
     81 #
     82 # # 分割,以默认分割,分完不带分割符.以找到的第几处为分隔符
     83 # s = "alexalex"
     84 # ret = s.split("e",1)
     85 #
     86 # # 变成标题
     87 # s = "the school"
     88 # ret = s.title()
     89 # print(ret)
     90 
     91 # # 索引
     92 # s = "alex"
     93 # print(s[0])
     94 #
     95 # # 长度
     96 # s = "abcd"
     97 # print(len(s))
     98 
     99 # 切片,遵循 大于等于,小于的规则
    100 # s = "alex"
    101 # print(s[0:1])
    102 # print(s[-3:-1])
    103 
    104 # # while 实现循环打印字符串中的每个元素
    105 # start = 0
    106 # s = "alex"
    107 # while start < len(s):
    108 #     temp = s[start]
    109 #     start += 1
    110 #     print(temp)
    111 
    112 # # for循环实现字符串打印,碰到e不打印
    113 # s = "alex"
    114 # for I in s:
    115 #     if I == "e":
    116 #         continue
    117 #     print(I)

     2. 列表

     1 ##### 列表:
     2 # 索引,正索引从0开始,负索引从-1开始
     3 # name_list = ["jiu","niu","liu"]
     4 # print(name_list[0])
     5 
     6 # # 切片
     7 # print(name_list[0:2])
     8 
     9 # # len 长度
    10 # print(len(name_list))
    11 
    12 # # for 循环
    13 # for i in name_list :
    14 #     print(i)
    15 
    16 # # 获取某个值的索引
    17 # print(name_list.index("liu"))
    18 
    19 # # 追加
    20 # name_list.append("ling")
    21 # print(name_list)
    22 
    23 # # 统计元素次数
    24 # print(name_list.count('jiu'))
    25 #
    26 # # 扩展,批量添加
    27 # num_list = ["11","22","33"]
    28 # name_list.extend(num_list)
    29 # print(name_list)
    30 
    31 # # 指定位置插入元素,位置 + 元素
    32 # name_list.insert(2,"SB")
    33 # print(name_list)
    34 
    35 # # 移除最后一个元素,并赋值给变量
    36 # a1 = name_list.pop()
    37 # print(a1)
    38 
    39 # # 移除指定元素,左往右第一个
    40 # name_list.remove('jiu')
    41 # print(name_list)
    42 
    43 # # 反转
    44 # name_list.reverse()
    45 # print(name_list)
    46 
    47 # 指定位置删除
    48 # name_list = ["jiu","niu","liu"]
    49 # print(name_list)
    50 # del name_list[0]
    51 # del name_list[1:3]
    52 # print(name_list)
    53 #
    53 # 修改列表指定元素
    54 # list[index] = value
    55 #
    56 # list + list
    57 # 连接列表,产生新列表,原列表不变
    58 #
    59 # list[] * n

    60 # list1 = ["你"]
    61 # list1 * 3
    62 # ["你","你","你"]
    63 # 排序
    64 # sort(key=None,reverse=False)
    65 # 对列表进行排序,就地修改,默认升序,key为一个函数,指定key如何排序
    66 # 补充:
      列表删除
      remove(value) 从左往右匹配查找第一个匹配的值并删除 !!!遗忘掉!!!
      pop(index)   不指定索引则删除最后一个  默认用此方法

    3.元祖

    1 ##### 元祖
    2 # 元祖和列表几乎是一样的,元祖不能修改。若以后创建一个集合,
    3 # 不想让人修改可以用元祖,想让人修改,可以用集合
    4 
    5 # 切片
    6 # 索引
    7 # len
    8 # for循环
    9 # 个数count

    4. 字典

     1 ###字典,字典的每个元素都是一个键值对
     2 user_info = {
     3     "name":"alex",
     4     "age":23,
     5     "gender":"M"
     6 }
     7 # 索引
     8 # print(user_info["name"])
     9 
    10 # # 循环,默认输出的是keys值
    11 # for I in user_info:
    12 #     print(I)
    13 # print(user_info.keys())     # 输出键
    14 # print(user_info.values())   # 输出值
    15 # print(user_info.items())    # 输出键值
    16 
    17 # 清除所有内容
    18 # user_info.clear()
    19 # print(user_info)
    20 #
    21 # # get 根据key获取值,如果key不存在,可以指定默认值,和下面删除 pop()类似功能
    22 # val = user_info.get('name')
    23 # print(val)
    24 # # 索引取值时,如果不存在则会报错。推荐用get。指定默认值处理方式
    25 # val = user_info.get('age1',40)
    26 # print(val)
    27 
    28 # # 检查字典中指定key是否存在
    29 # ret = 'name' in user_info.keys()
    30 # print(ret)
    31 
    32 # # update 批量更新键值对
    33 # print(user_info)
    34 # test = {
    35 #     "a1":"123",
    36 #     "a2":"456"
    37 # }
    38 # user_info.update(test)
    39 # print(user_info)
    40 
    41 # # 删除指定索引键值
    42 # del user_info["name"]
    43 # print(user_info )
    44 # 删除指定键,返回值是一个元祖
    45 # a =
    dic.pop('age')
    46 #
    47 # 可删除不存在键,自定义设置返回值
    47 # print(dic.pop('high','没有此键'))

    48 # 分别赋值思想,则可以分别打印字典的键,值
    49 # for a,b in dic.items():
        print(a,b)
    
    

     5. 补充

    # # enumerate 默认会在列表前面加一行索引数字,默认从0开始计数,列表,字典等都可用
    # li = ["电脑","鼠标","键盘"]
    # for key,value in enumerate(li,1):
    #     print(key,value)
    #
    # inp = input("请输入你要的商品:")
    # num = int(inp)
    # print(li[num - 1])
    # li = ["电脑","鼠标","键盘"]
    # inp = li.index("鼠标")
    # print(inp)
    
    # range 需要用循环打印出内容,也可以指定跨度
    # for I in range(1,10):
    #     print(I)
    # for I in range(10,1,-2):
    #     print(I)
    # 用range 循环列表实现enumerate的功能
    # li = ["jiu","liu","niu"]
    # lens = len(li)
    # # print(lens)
    # for I in range(0,lens):
    #     print(I,li[I])

     三. 练习题

    1.元素分类

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

     1 li = [11,22,33,44,55,66,77,88,99]
     2 all = {
     3     "k1":[],
     4     "k2":[]
     5 }
     6 for I in li:
     7     if I > 66:
     8         all["k1"].append(I)
     9     elif I < 66:
    10         all["k2"].append(I)
    11 print(all)
    12 感觉此处运用到的一个知识点为:字典是另一种可变容器模型,且可存储任意类型对象,如字符串、数字、元组等其他容器模型。

    2.查找

    查找列表中元素,移除每个元素的空格,并查找以 a或A开头 并且以 c 结尾的所有元素。
        li = ["alec", " aric", "Alex", "Tony", "rain"]
        tu = ("alec", " aric", "Alex", "Tony", "rain") 
        dic = {'k1': "alex", 'k2': ' aric',  "k3": "Alex", "k4": "Tony"}
    1 # for I in li:
    2 #     if I.startswith('a') or I.startswith('A') and I.endswith('c'):
    3 #         print(I)
    4 # for I in tu:
    5 #     if I.startswith('a') or I.startswith('A') and I.endswith('c'):
    6 #         print(I)
    7 # for I in dic.values():
    8 #     if I.startswith('a') or I.startswith('A') and I.endswith('c'):
    9 #         print(I)

    3.商品选购

    商品 li = ["手机", "电脑", '鼠标垫', '游艇']

    4.购物车

    功能要求:

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

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

     1 dic = {
     2     "河北": {
     3         "石家庄": ["鹿泉", "藁城", "元氏"],
     4         "邯郸": ["永年", "涉县", "磁县"],
     5     }
     6     "河南": {
     7         ...
     8     }
     9     "山西": {
    10         ...
    11     }
    12  
    13 }
  • 相关阅读:
    window查看已保存过的wifi的密码
    js 多个数组取交集
    macOS APP 窗口焦点监听
    proxifier注册码
    天才算法之睡眠排序(C#实现)
    Tomcat 7使用AJP协议设置问题
    nginx启动报错(1113: No mapping for the Unicode character exists in the target multi-byte code page)
    八皇后的n种放置方法
    insufficient permission for adding an object to repository database .git/objects
    centos下搭建php开发环境(lamp)
  • 原文地址:https://www.cnblogs.com/jiuyachun/p/9958800.html
Copyright © 2020-2023  润新知