zoukankan      html  css  js  c++  java
  • python基础数据类型

    字符串

    # s = "al1ex is a gay and Wu傻sir is A gay too"
    
    # s1 = s.capitalize() # 把首字母变成大写
    # print(s1)
    
    # s2 = s.lower() # 小写
    # print(s2)
    
    # s3 = s.upper()  # 大写
    # print(s3)
    
    # s4 = s.swapcase() # 大小写互换
    # print(s4)
    
    # s2 = "БBß"  # 俄美德
    # print(s2)
    # print(s2.lower())
    # print(s2.casefold())
    
    # s5 = s.title() # 把每个单词的首字母大写
    # print(s5)
    
    # s = "sb"
    # s1 = s.center(10, "*") # 强行使用*在原字符串左右两端进行拼接. 拼接成10个单位
    # print(s1)
    
    # s = "    alex    is    a   gay   "
    # s1 = s.strip() # 默认去掉空格. 空白	 
    
    # print(s1)
    
    # username = input("请输入用户名:").strip()
    # password = input("请输入密码:").strip()
    # if username == 'alex' and password =="123":
    #     print("成功")
    # else:
    #     print("失败")
    
    # s = "sb alex wusir sb sb taibai taibai sb"
    # print(s.strip("sb")) # 可以指定要去掉的内容
    
    # s = "泰坦尼克号, 西虹市首富, 小猪佩奇, 冒险王"
    # s1 = s.replace("冒险王", "西西里的美丽传说")
    # s2 = s.replace("佩奇", "wusir")
    # print(s2)
    #
    # s = "alex_wusir_taibai_ritian"
    # s1 = s.replace("_","")
    # print(s1)
    
    # s8 = "sylar_alex_taibai_wusir_eggon"
    # # s9 = s8.replace("i", "sb", 2) # 换两次
    # # print(s9)
    #
    # lst = s8.split("taibai") # 切完的结果是一个列表. 列表中装的是字符串. 用什么切. 就会损失掉什么
    # print(lst)
    
    # s = """我家大门常打开
    # 开放怀抱等你
    # 后面是什么歌词
    # 我忘了"""
    # lst = s.split("
    ")
    # print(lst)
    
    # s = "我今天下午要去吃饭饭"
    # lst = s.split("我今天下午要去吃饭饭哈哈哈") # 没切
    # print(lst)
    
    # s = "我叫%s, 我今年%s了, 我喜欢%s" % ("周杰伦", "40", "昆凌")
    # print(s)
    
    # s = "我叫{}, 我今年{}了, 我喜欢{}".format("周杰伦", "40", "昆凌")
    # print(s)
    
    # s = "我叫{0}, 我今年{1}了, 我喜欢{2}".format("周杰伦", "40", "昆凌")
    # print(s)
    
    # s = "我叫{name}, 我今年{age}了, 我喜欢{hobby}".format(hobby="周杰伦", age="40", name="昆凌")
    # print(s)
    
    # s = "alex is a gay"
    # print(s.startswith("tory")) # 以xxx开头
    # print(s.endswith("girl")) # 以xxx结尾
    
    # s = "I have a dream. I want to kill you!"
    # 都可以进行索引范围
    # print(s.count("dream")) # 计算a在字符串中出现的次数
    # print(s.find("a")) # 查找xxx在字符串中出现的位置. 只找第一次出现的位置, 没有就返回-1
    # print(s.index("z")) # 当字符串不存在的时候. 报错
    
    
    # s = "abcdefg1@"
    # print(s.isdigit()) # %d
    # print(s.isalpha()) # 字母
    # print(s.isalnum()) # 是否由数字和字母组成
    
    # s = "壹仟贰佰五十六萬拾"
    # print(s.isnumeric())
    
    # 字符串长度, python的内置函数len(), int(), bool(), str(), type()
    # s = "娃哈哈可口可乐"
    # print(len(s)) # 字符串中的字符的个数
    
    
    # s = "王小利刘能赵四"
    # # # 对字符串进行遍历.
    # n = 0
    # while n < len(s):
    #     print(s[n])
    #     n = n + 1
    #
    # # 迭代
    # for c in s: # charactor
    #     print(c)
    字符串类型基本用法

     字节流的问题 

    s="中文"
    print(type(s))
    ls=s.encode("utf-8")     #已经编译成二进制,但是要打印的话会以16进制打印出来
    print(ls)
    print(ls.decode("utf-8"))
    字节流的问题

    列表:

    # lst = ["赵四", "施瓦星格", "黄渤", "郭达森", "赛利亚"]
    
    # 在屁股后面添加
    # lst.append("黄宏") # 在原有的基础上进行的操作
    # # 在xxx位置插入xxxx内容
    # lst.insert(1,"王力宏")
    # lst.extend(["麻花藤", "马云", "王健林", "许家印"]) # 迭代添加
    # print(lst)
    
    # 删除
    # data = lst.pop(2) # 返回被删除的数据
    # print(data)
    # print(lst)
    
    # lst.remove("赵四") # 删除元素.
    # lst.remove("刘能") # 如果不存在会报错
    
    # 切片删除
    # del lst[1:3]
    
    # 清空
    # lst.clear()
    # print(lst)
    
    # lst = ["王者农药", "魔兽世界", "DNF", "逆水寒", "反恐精英"]
    # # lst[0] = "扫雷"
    # # print(lst)
    # # lst[3] = "吃鸡"
    #
    # # lst[1:3] = ["跑跑卡丁车"]  # 先删除后添加
    # # lst[1::2] = ["QQ华夏","QQ三国"] # 切片修改的时候. 如果步长不是1. 注意元素的个数
    # print(lst)
    
    lst = ["锅包肉", "好人家火锅", "巫山烤鱼", "清水煮白菜", "烤鸭"]
    for el in lst: # element(元素)
        print(el)
    列表类型基本用法
    # 将列表转换成字符串. 每个元素之间用_拼接
    # s = "**".join(["高华新", "刘清扬", "崔园樟"])   #用的都是字符串的方法,所以字符窜在前,方法属性在后,括号里面的参
    # print(s)                                       #数是列表
    #
    # ss = "高华新**刘清扬**崔园樟"
    # ss.split("**")                                 #用的都是字符串的方法,所以字符窜在前,方法属性在后,括号里面的
    #                                                  参数是分隔符
    # 字符串转换成列表: split()
    # 把列表转换成字符串: join()
    
    # s = "_".join("马化腾")
    # print(s)
    #
    # join(可迭代对象)
    
    # lst = ["紫云", "大云", "玉溪", "紫钻","a","b"]
    # # lst.clear()
    # new_lst = [] # 准备要删除的信息
    # for el in lst: # 有一个变量来记录当前循环的位置
    #     new_lst.append(el)
    #
    # # 循环新列表, 删除老列表
    # for el in new_lst:
    #     lst.remove(el)
    #
    # # 删除的时候, 发现. 剩余了一下内容. 原因是内部的索引在改变.
    # # 需要把要删除的内容记录下来. 然后循环这个记录. 删除原来的列表
    #
    # print(lst)
    # print(new_lst)
    
    
    # lst = ["张国荣", '张铁林', '张国立', "张曼玉", "汪峰"]
    # # 删掉姓张的
    # # 记录姓张的.
    # zhangs = []
    # for el in lst:
    #     if el.startswith("张"):
    #         zhangs.append(el)
    # for el in zhangs:
    #     lst.remove(el)
    # print(lst)
    # print(zhangs)
    
    # 字典
    # dic = {"提莫":"冯提莫", "发姐":"陈一发儿", "55开":"卢本伟"}
    # # dic.clear()
    # lst = []
    # for k in dic:
    #     lst.append(k)
    #
    # for el in lst:
    #     dic.pop(el)
    # print(dic)
    
    # 综上. 列表和字典都不能再循环的时候进行删除. 字典再循环的时候不允许改变大小
    
    # dic = {"apple":"苹果", "banana":"香蕉"}
    # # 返回新字典. 和原来的没关系
    # ret = dic.fromkeys("orange", "橘子") # 直接用字典去访问fromkeys不会对字典产生影响
    # ret = dict.fromkeys("abc",["哈哈","呵呵", "吼吼"]) # fromkeys直接使用类名进行访问
    # print(ret)
    # a = ["哈哈","呵呵", "吼吼"]
    # ret = dict.fromkeys("abc", a) # fromkeys直接使用类名进行访问
    # a.append("嘻嘻")
    # print(ret)
    补充知识点

    元组:

    # by luffycity.com
    # print((1+3)*5)
    # print((3))
    # tu = (3, ) # 元组中如果只有一个元素. 需要在括号里写一个,
    # tu = tuple() # 空元组
    # print(type(tu))
    
    # tu = ("人民币", "美元", "英镑", "欧元")
    # tu.append("哈哈")
    # tu[0] = "日元" # 不予许修改
    # del tu[2] # 删除也不行
    
    # print(tu[2]) # 索引可以用
    # print(tu[::2])
    
    # for el in tu:
    #     print(el)
    
    # 元组的第一层是不能进行赋值的. 内部元素是没有要求
    # tu = (1, "哈喽", "how are you?", "alex", ["alex"])
    # tu[3].upper()
    # print(tu)
    元组知识概要

    字典:

    # dic = {'name':'alex','age':9000}   #字符串
    # print(dic)
    #
    # dic = {1:'a',2:'b',3:'c'}           #数字
    # print(dic)
    #
    # dic = {True:'1',False:'0'}          #布尔值
    # print(dic)
    #
    # dic = {(1,2,3):'abc'}                #元组
    # print(dic)
    
    # dic = {[1,2,3]:'abc'}
    # print(dic)
    
    
    #
        # dic['火女'] = '人头狗'   # 新增
        # print(dic)
        # dic.setdefault('火女','安妮')     # 如果在字典中存在就不进行任何操作,不存在就进行添加
        # dic.setdefault('火女','火男')
    #
    
        # ret = dic.pop('易大师')  #通过key删除  返回被删除的value
        # print(ret)
        # del dic['剑豪']
        # dic.clear()   # {}
    
        # ret = dic.popitem()   #随机删除  返回值 一个元组  (key,value)
        # print(ret)
        # print(dic)
    
    # 改:
        # dic['剑豪'] = '哈莎阁'   # 强制修改
    
        # dic1 = {'火女':'安妮','火男':'布兰德','维恩':'暗影猎手','剑豪':'哈莎阁'}
        # dic1.update(dic)
        #
        # print(dic1)
    
    #
    
        # for 循环       元组  键  值   键值对
    
        # for i in  dic:
        #     print(i)     #for 循环默认是获取字典中的键
    
        # print(dic['易大师父'])                   #查看1   没有这个键的时候查询会报错
        # print(dic.get('易大师','你傻啊,没有!'))    #查看2   没有返回None 可以指定返回内容
    
        # print(dic.setdefault('易大师范湖'))        #查看3    没有返回None
    
    
    # 其他操作(字典中独特的)
    # keys  values items
    
    # print(dic.keys())  # (高仿列表)
    # print(dic.values())  # (高仿列表)
    # print(dic.items())
    # for i in dic.keys():
    #     print(i)
    #
    # for i in dic:
    #     print(i)     #获取到字典中的每一个键
    
    # for i in dic.values():
    #     print(i)     #获取到字典中的每一个值
    
    # for i in dic.items():
    #     print(i)
    
    
    # 解构(解包)
    
    a,b = '12'   #将后边解构打开按位置赋值给变量 支持  字符串 列表 元组
    print(a)
    print(b)
    # dic = {'易大师':'剑圣','剑豪':'托儿所','草丛伦':'大宝剑'}
    # for a,b in dic.items():
    #     # print(dic.items())
    #     print(a)
    #     print(b)
    
    
        # dic1 = {}
        #
        # dics = dic1.fromkeys([1,2,3],'abc')
    
    
    # 字典嵌套:
    
    # dic = {
    #     'name':'汪峰',
    #     'age':43,
    #     'wife':{
    #         'name':'国际章',
    #         'age':39,
    #         'salary':100000
    #     },
    #     'baby':[
    #         {'name':'熊大','age':18},
    #         {'name':'熊二','age':15},
    #     ]
    #
    # }
    #
    # dic['baby'][0]['age'] = 19
    #
    # print(dic)
    字典操作

    集合:

    # s = {"周杰伦", "的老婆","叫昆凌", (1,2,3), "周杰伦"}
    # lst = [11,5,4,1,2,5,4,1,25,2,1,4,5,5]
    # s = set(lst)    # 把列表转换成集合. 进行去重复
    # lst = list(s)   # 把集合转换回列表.
    # print(lst)
    #添加
    # s = {"刘嘉玲", '关之琳', "王祖贤"}
    # s.add("张曼玉")
    # print(s)
    
    # # s.update("麻花藤")    # 迭代更新
    # s.update(["张曼玉","李若彤","李若彤"])
    # print(s)
    
    #删除,随机删除一个
    s = {"刘嘉玲", '关之琳', "王祖贤"}
    # s.pop()      #随机弹出一个,不能加参数,加参数报错
    # print(s)
    
    # s.remove("王祖贤")
    # print(s)
    
    # s.clear()
    # print(s)
    
    
    # 集合本身是可变的数据类型, 不可哈希, 有增删改查操作
    # s = {"刘嘉玲", '关之琳', "王祖贤"}
    # # s.update("麻花藤")    # 迭代更新
    # s.update(["张曼玉","李若彤","李若彤"])
    # print(s)
    
    # 集合中的元素必须是可哈希的. 不重复的. 可以去重. 哈希hash算法
    #要点总结:可哈希指的是不可变的数据结构(字符串str,元组tuple,对象集objects)
    #可哈希(hashable)和不可变性(immutable)
    
    #如果自己的生命周期中有一个哈希值是不可变的,那么他就是可哈希的,这个哈希值就是他们的id()
    #参考链接:https://blog.csdn.net/u010250863/article/details/64129948/
    集合
  • 相关阅读:
    7-1 词频统计 (30 分)
    VS Code 配置 Python 开发环境
    7-6 求指定层的元素个数 (40 分)
    7-5 列表元素个数的加权和(1) (40 分)
    Oracle中的数据库、用户、方案、表空间、表对象之间的关系
    Oracle归档模式和非归档模式
    Oracle中的单引号和双引号
    PL/SQL编程中的问题
    Oracle数据库语言分类
    Oracle中的delete、truncate和drop
  • 原文地址:https://www.cnblogs.com/zhuhaofeng/p/9614549.html
Copyright © 2011-2022 走看看