zoukankan      html  css  js  c++  java
  • Python之路【第二篇】python基础 之基本数据类型

    运算符                                                                                              

    1、算数运算:

    2、比较运算:

    3、赋值运算:

    4、逻辑运算:

    5、成员运算:

     1 name = "yehaoran "     # in  判断ye是否在name里面 在的话返回ok 不在返回not
     2 # if "ye" in name :
     3 #     print("ok")
     4 # else:
     5 #     print("not")
     6 
     7 if "ran" not in name:
     8     print("ok")
     9 else:
    10     print("not")   #  in not  判断ran是否在不name里面 不在的话返回ok 在返回not
    成员运算

     基本数据类型                                                                                                         

     1、数字

    int(整型)

      在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
      在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
     1  1 #  数字 int
     2  2 # python3里,1111111111111122333数字多长都用int
     3  3 # python2里,数字太大用long小的用int
     4  4 
     5  5 # 1、将字符串转换成数字    type 查看数据类型
     6  6 # a = "123"
     7  7 # print(type(a))
     8  8 # b = int(a )
     9  9 # print(type(b))
    10 10 # b = b + 100
    11 11 # print(b)
    12 12 
    13 13 
    14 14 # 2、以16进制的形式转换成10进制
    15 15 # num = "a"
    16 16 # v = int(num, base=16)
    17 17 # print(v)
    18 18 
    19 19 
    20 20 # 3、当前数字的二进制,至少用n位表示
    21 21 # # a = 123
    22 22 # # r = a.bit_length()
    23 23 # # print(r)
    int 的集中常见用法
    2、布尔值
      真或假
      1 或 0
    3、字符串
    字符串的格式    :    "hello world"
    字符串常用功能:
    • 移除空白
    • 分割
    • 长度
    • 索引
    • 切片
      1 # 二、字符串  str
      2 
      3 
      4 # 1、首字母大写
      5 # name = "xiaoming"
      6 # print(name.capitalize())
      7 
      8 # 2、 casefold、lower两个都是把大写字母转换成小写最好用第一个 。upper把小写转化成大写
      9 # name = "xiaoMing"
     10 # v = name.casefold()
     11 # print(v)
     12 # v2 = name.upper()   重要
     13 # v1 = name.lower()  重要
     14 # print(v1)
     15 # print(v2)
     16 
     17 # 3、设置宽度并将内容居中
     18 # 20代指总长度
     19 # * 代表空白未知填充 ,一个字符,可有可无
     20 # a1 = "alex"
     21 # ret = a1.center(20, '*')
     22 # print(ret)
     23 # 在右边填充
     24 # test = "alex"
     25 # v = test.ljust(20,"*")
     26 # print(v)
     27 # 在左边填充
     28 # test = "alex"
     29 # v = test.rjust(20,"*")
     30 # print(v)
     31 
     32 # test = "alex"
     33 # v = test.zfill(20)
     34 # print(v)  #忽略
     35 
     36 # 4、去字符串中寻找,寻找子序列出现的次数
     37 # a1 = "alex is alph"
     38 # ret = a1.count("a")
     39 # ret = a1.count("al",0,10)
     40 # print(ret)
     41 
     42 # 5、查看是否已什么结尾  重要***
     43 # 查看是否已什么开始
     44 # name = "xiaoMing"
     45 # v = name.endswith('g')
     46 # v1 = name.startswith('xi')
     47 # print(v)
     48 # print(v1)
     49 
     50 # 6、从开始往后面找,找到第一个之后,获取其位置,未找到返回一个-1  find重要
     51 # name = "xiaoming"
     52 # v = name.find('ao',2,6)#从那个位置开始找  前面的是大于等于 后面是小于
     53 # # print(v)
     54 # name = "xiaoming"   #index 用法同find 但是如果index找不大值直接报错
     55 # v = name.index("ming")
     56 # print(v)
     57 
     58 # 7、格式化输出,将一个字符串中的占位符替换为指定的值   format重要
     59 # test = 'i am  {name},age {a}'
     60 # print(test)
     61 # v = test.format(name = 'xiaoming',a = 24)
     62 # print(v)
     63 # test = 'i am  {0},age {1}'
     64 # print(test)
     65 # v = test.format('xiaoming',24)
     66 # print(v)
     67 # test.format_map的方法类似format 区别如下图
     68 # test = 'i am  {name},age {a}'
     69 # print(test)
     70 # v = test.format(name = 'xiaoming',a = 24)
     71 # v1 = test.format_map({"name":"xiaoming","a":19})
     72 # print(v)
     73 # print(v1)
     74 
     75 # 8、判段字符串中是否只包含 字母和数字
     76 # name = "uuuuaa888"
     77 # v = name.isalnum()
     78 # print(v)
     79 
     80 # 9、判断是否是字母
     81 # test = "assd"
     82 # v = test.isalpha()
     83 # print(v)
     84 
     85 # 10、当前输入是否是数字
     86 # test = "1112"
     87 # v1 = test.isdecimal() #最常用
     88 # v2 = test.isdigit()
     89 # v3 = test.isnumeric()
     90 # print(v1,v2,v3)
     91 
     92 # 11、 字母、数字、下划线;标识符 def class
     93 # a = "def"
     94 # v = a.isidentifier()
     95 # print(v)
     96 
     97 # 12、是否出现不可显示的字符
     98 # 	 制表符
     99 # 
     换行
    100 # test = "ooos	sdjf"
    101 # v = test.isprintable()
    102 # print(v)
    103 
    104 # 13、是否全是空格
    105 # test = "aaaf aass"
    106 # v = test.isspace()
    107 # print(v)
    108 
    109 # 14、判断是否是标题
    110 # test = "Return True if all cased characters in S are uppercase and
    111 #  v1 = test.istitle()
    112 # print(v1)
    113 #  v2 = test.title()
    114 # print(v2)
    115 # v3 = v2.istitle()
    116 # print(v3)
    117 
    118 # 15、非常重要*****15、将字符串中的每一个元素按照指定分隔符进行拼接
    119 # test = "你是风儿我是沙"
    120 # v = " ".join(test)
    121 # print(v)
    122 
    123 # 16、 去除空白 去除
     	  指定内容的时候把指定的内容去掉
    124 # test = "alex"
    125 # v = test.lstrip("ax") # 移除指定字符串
    126 #                         # 有限最多匹配
    127 # v = test.rstrip()
    128 # v = test.strip()    # 很重要
    129 
    130 
    131 
    132 # 17、# 对应关系替换
    133 # test =  "aeiou"
    134 # test1 = "12345"
    135 # v = "asidufkasd;fiuadkf;adfkjalsdjf"
    136 # m = str.maketrans("aeiou", "12345")
    137 # new_v = v.translate(m)
    138 # print(new_v)
    139 
    140 # 18、 分割为三部分
    141 # test = "testasdsddfg"
    142 # v = test.partition('s')
    143 # print(v)
    144 # v = test.rpartition('s')
    145 # print(v)
    146 # 21 以xxx开头,以xx结尾   很重要
    147 # test = "backend 1.1.1.1"
    148 # v = test.startswith('a')
    149 # print(v)
    150 # test.endswith('a)
    151 
    152 # 22 大小写转换
    153 # test = "ALEX"
    154 # v = test.swapcase()
    155 # print(v)
    156 
    157 # 23 字母,数字,下划线 : 标识符 def  class
    158 # a = "def"
    159 # v = a.isidentifier()
    160 # print(v)
    161 
    162 # 24 将指定字符串替换为指定字符串
    163 # test = "alexalexalex"
    164 # v = test.replace("ex",'bbb')
    165 # print(v)
    166 # v = test.replace("ex",'bbb',2)
    167 # print(v)
    168 
    169 
    170 ##################### 7个非常重要的 ######################
    171 # join       # '_'.join("asdfasdf")
    172 # split
    173 # find
    174 # strip
    175 # upper
    176 # lower
    177 # replace
    178 
    179 ####################必须要会的#######################
    180 
    181 # # 1、索引
    182 # test = "alex"
    183 # # 索引 , 下标 , 获取字符串中的某一个字符
    184 # v = test[3]
    185 # print(v)
    186 
    187 # 2、切片
    188 # test = "alex"
    189 # v = test[0:2] #0<=  <2   -1代表最后的位置
    190 # print(v)
    191 
    192 # 3、len 查看字符串中有多少个字符组成
    193 # test = "alex"
    194 # v = len(test)
    195 # print(v)
    196 
    197 # 4、while循环
    198 # test = "asdfghjkl"
    199 # index = 0
    200 # while  index < len(test) :
    201 #     v = test[index]
    202 #     print(v)
    203 #
    204 #     index += 1
    205 # print("======")
    206 #
    207 # for i in test :  和上面的while循环实现的效果一样
    208 #     print(i)
    209 
    210 
    211 # PS :字符串一旦被创建就不可以被修改
    212 #       一旦修改或者拼接,都会造成重新生成字符串
    213 
    214 
    215 # 5 range将文字 对应的索引打印出来:
    216 # test = input(">>>>>")
    217 # for i in range(0 ,len(test)):
    218 #     print(i,test[i])
    219 
    220 #实现思路
    221 # test = input(">>>>>")
    222 # for i in test :
    223 #     print(i)
    224 # l = len(test)
    225 # print(l)
    226 # r = range(0,l)
    227 # for i in r :
    228 #     print(i,test[i])
    229 # 19 分割为指定个数
    230 # v = test.split('s',2)   很重要
    231 # print(v)
    232 # test.rsplit()
    233 
    234 
    235 # 20 分割,只能根据,true,false:是否保留换行
    236 # test = "asdfadfasdf
    asdfasdf
    adfasdf"
    237 # v = test.splitlines(False)
    238 # print(v)
    239 
    240 str 用法和注意事项 重点
    str 用法和注意事项 重点
    4、列表
    创建列表:
    1 name_list = ['alex', 'seven', 'eric']
    2 3 name_list = list(['alex', 'seven', 'eric'])

    基本操作:

    • 索引
    • 切片
    • 追加
    • 删除
    • 长度
    • 切片
    • 循环
    • 包含
      1 # list # 类,列表
      2 # li = [1, 2, 3, ["alex", 12, "thinks"], "want", "to"]
      3 # 1、列表的格式
      4 # 2、列表中可以嵌套任何类型
      5 # 中括号括起来
      6 # ,逗号分割每个元素
      7 # 列表中的元素可以是 数字,字符串,布尔值,所有的都能放进去
      8 # 3、索引取值
      9 # print(li[3])
     10 # 4、切片,切片的结果是列表
     11 # print(li[3:-1])
     12 # 列表支持while 、 for循环
     13 # 5、for i in li :
     14 #     print(i)
     15 
     16 # 列表的元素是可以被修改的
     17 # li = [1, 2, 3, ["alex", 12, "thinks"], "want", "to"]
     18 # #################### 6、索引修改 删除
     19 # 修改
     20 # li[1] = 120
     21 # print(li)
     22 # li[2] = [1,3,5,]
     23 # print(li)
     24 # 删除
     25 # del li[1]
     26 # print(li)
     27 # #####################7、 切边操作修改 删除
     28 # 修改
     29 # li[1:3] = [120,90]
     30 # print(li)
     31 # # 删除
     32 # del li[2:6]
     33 # print(li)
     34 
     35 # li = [1, 2, 3, ["alex", 12, "thinks"], "want", "to"]
     36 # # 8in 操作     根据逗号分割作为一个整体最为一个整体
     37 # v = 1 in li
     38 # print(v)
     39 
     40 # ##########################转换#######
     41 # 把str 转化成列表
     42 # a = "asdf"
     43 # new_a = list(a)
     44 # print(new_a)
     45 
     46 # 列表转换字符串 列表中出现数字自己写for循环
     47 # li = [11,"22","alex"]
     48 # s = ""
     49 # for i in li:
     50 #     s = s +str(i)
     51 # print(s)
     52 # 列表中的元素只有字符串 ; 直接用 join 方法:
     53 # li = [ "123" , "1lex"]
     54 # v = "".join(li)
     55 # print(v)
     56 
     57 # ###################灰魔法:list 类中提供的方法 ##################
     58 # 1、原来的值最后追加
     59 # 对象 方法(。。) # 变量 li 对象调用append方法   里面的元素叫参数
     60 # li = [11, 22, 33, 44, 22]
     61 # li.append(99)
     62 # print(li)
     63 
     64 #2、清空列表
     65 # li = [11, 22, 33, 44, 22]
     66 # li.clear()
     67 # print(li)
     68 
     69 # 3、拷贝 ,浅拷贝
     70 # li = [11, 22, 33, 44, 22]
     71 # v  = li.copy()
     72 # print(v)
     73 
     74 # 4、计算列表中元素出现的次数
     75 # li = [11, 22, 33, 44, 22]
     76 # v = li.count(22)
     77 # print(v)
     78 
     79 # 5、扩展原列表 ,参数 :可迭代对象
     80 # li = [11, 22, 33, 44, 22]
     81 # li.append([222])
     82 # print(li)
     83 
     84 # li = [11,22,33,22,44]
     85 # li.extend(["alex",998])
     86 # print(li)   # 用for循环extend后面加的参数循环打印加到列表里
     87 # # 例如 :
     88 # li.extend("alex")
     89 # print(li)
     90 
     91 # 6、根据值获取当前值索引的位置 (左边优先)
     92 # li = [11, 22, 33, 44, 22]
     93 # v = li.index(33)
     94 # print(v)
     95 
     96 # 7、在指定索引位置插入元素
     97 # li = [11, 22, 33, 44, 22]
     98 # li.insert(0,22)
     99 # print(li)
    100 
    101 # 8、删除某个值(1、指定索引 : 2、默认最后一个)并获取删除的值
    102 # li = [11, 22, 33, 44, 22]
    103 # v = li.pop(3)
    104 # print(v)
    105 # print(li)
    106 
    107 # 9、删除列表中的指定值,左边优先
    108 # li = [11, 22, 33, 44, 22]
    109 # li.remove(22)
    110 # print(li)
    111 # PS :pop remove del li[0]  del li[7:9] clear    #都是删除
    112 
    113 # 10、将列表中进行反转
    114 # li = [11, 22, 33, 44, 22]
    115 # li.reverse()
    116 # print(li)
    117 
    118 # 11、列表的排序
    119 # li = [1,77,55,99,22,]
    120 # li.sort() #默认从小到大排序
    121 # li.sort(reverse= True)    # 从大到小排序
    122 # print(li)
    list 用法和注意事项
    5、元祖
    创建元祖:
    1 ages = (11, 22, 33, 44, 55)
    2 3 ages = tuple((11, 22, 33, 44, 55))
    # 1、元组的一级元素不可被修改/删除/增加
    # tuple
    # 一般写元组的时候,推荐在后面加个,逗号
    # 构成方式  tu = (11,222,"alex",(1,2),[(22,33)])
    
    # 2、元组是可以索引的切片取值
    # tu = (11,222,"alex",(1,2),[(22,33)])
    # # 元组是有序的
    # v = tu[3][0][0]
    # print(v)
    # v = tu[3]
    # print(v)
    # tu[3][0] = 39
    # print(tu)
    
    # 3、tuple是可迭代对象
    tuple

     6、字典(无序)

    创建字典
    person = {"name": "mr.wu", 'age': 18}
    或
    person = dict({"name": "mr.wu", 'age': 18})

    常用操作:

    • 索引
    • 新增
    • 删除
    • 键、值、键值对
    • 循环
    • 长度
      1 # 字典
      2 # 1、基本构成
      3 # info  = {
      4 #     "k1" : "v1", #键值对
      5 #     "k2" : "v2",
      6 # }
      7 
      8 # 2、字典中的value可以是任何值  想嵌套多少嵌套多少层
      9 # info = {
     10 #     "k1": 18,
     11 #     "k2": True,
     12 #     "k3": [
     13 #         11,
     14 #         [],
     15 #         (),
     16 #         22,
     17 #         33,
     18 #         {
     19 #             'kk1': 'vv1',
     20 #             'kk2': 'vv2',
     21 #             'kk3': (11,22),
     22 #         }
     23 #     ],
     24 #     "k4": (11,22,33,44)
     25 # }
     26 
     27 # 3、列表、字典不能做为字典的key    如果key相同,输出的时候不打印
     28 
     29 # info = {
     30 #     "k1" : 18,
     31 #     "k2" : True,
     32 #     "k3" : [
     33 #         11,
     34 #         [],
     35 #         (),
     36 #         22,
     37 #         33,
     38 #         {
     39 #             'kk1': 'vv1',
     40 #             'kk2': 'vv2',
     41 #             'kk3': (11,22),
     42 #         }
     43 #     ],
     44 #     "k4" : (11,22,33,44),
     45 #     "True" : "123"
     46 #     #[1,2,3,"alex"]: 123,列表不能做key
     47 #     #{"k1":"v1"} : 123, 字典不能做key
     48 # }
     49 # print(info)
     50 
     51 # 4、字典是无序的
     52 
     53 # 5、索引方式找到指定元素
     54 
     55 # info = {
     56 #     "k1": 18,
     57 #     "k2": True,
     58 #     "k3": [
     59 #         11,
     60 #         [],
     61 #         (),
     62 #         22,
     63 #         33,
     64 #         {
     65 #             'kk1': 'vv1',
     66 #             'kk2': 'vv2',
     67 #             'kk3': (11,22),
     68 #         }
     69 #     ],
     70 #     "k4": (11,22,33,44)
     71 # }
     72 # # v = info["k1"]
     73 # # print(v)
     74 # # v = info[2]
     75 # # print(v)
     76 # v = info["k3"][5]["kk3"][0]
     77 # print(v)
     78 
     79 # 6、字典支持del 删除
     80 # info = {
     81 #     "k1": 18,
     82 #     "k2": True,
     83 #     "k3": [
     84 #         11,
     85 #         [],
     86 #         (),
     87 #         22,
     88 #         33,
     89 #         {
     90 #             'kk1': 'vv1',
     91 #             'kk2': 'vv2',
     92 #             'kk3': (11,22),
     93 #         }
     94 #     ],
     95 #     "k4": (11,22,33,44)
     96 # }
     97 # del info["k1"]
     98 # del info["k3"][5]["kk1"]
     99 # print(info)
    100 
    101 # 7 for 循环
    102 # info = {
    103 #     "k1": 18,
    104 #     "k2": True,
    105 #     "k3": [
    106 #         11,
    107 #         [],
    108 #         (),
    109 #         22,
    110 #         33,
    111 #         {
    112 #             'kk1': 'vv1',
    113 #             'kk2': 'vv2',
    114 #             'kk3': (11,22),
    115 #         }
    116 #     ],
    117 #     "k4": (11,22,33,44)
    118 # }
    119 # for item in info :   #循环字典中的key
    120 #     print(item)
    121 
    122 # for i in info.keys():   #循环字典中的key
    123 #     print(i)
    124 
    125 # for i in info.values():   #循环字典中的values
    126 #     print(i)
    127 
    128 # for i in info.keys():
    129 #     print(i,info[i])
    130 
    131 # for i,v in info.items():   key 和 values 搜客循环出来
    132 #     print(i,v)
    133 
    134 # ###############字典中特有的功能########################
    135 
    136 # 1、根据序列,创建字典,并指定元素
    137 # v = dict.fromkeys(['k',123,'999'],123)#静态方法
    138 # print(v)
    139 
    140 # 2、根据key获取值,key不存在时,可以指定默认值(None)
    141 dic = {
    142     "k1":"v1",
    143     "k2":[]
    144 }
    145 # v = dic.get("k1",11111)
    146 # print(v)
    147 
    148 # 3、删除并获取值
    149 # v = dic.pop("k11111",90)
    150 # print(dic,v)
    151 # k,v = dic.popitem()#随机删除
    152 # print(dic,k,v)
    153 
    154 # 4、设置值,已经存在不设置,获取当前key对应的值、
    155 # 设置值,不存在设置,获取当前key对应的值
    156 # v = dic.setdefault("k11","13")
    157 # print(dic,v)
    158 
    159 # 5、 已经存在的覆盖key对应的值,不存在创建
    160 # dic.update({'k1':11111,'k3':'alex'})
    161 # dic.update(k1=123,k3=235,k5="asdf")
    162 
    163 # print(dic)
    dict

    7、重点总结

     1 # 一、数字
     2 # int(..)
     3 # 二、字符串
     4 # replace/find/join/strip/startswith/split/upper/lower/format
     5 # tempalte = "i am {name}, age : {age}"
     6 # # v = tempalte.format(name='alex',age=19)
     7 # v = tempalte.format(**{"name": 'alex','age': 19})
     8 # print(v)
     9 # 三、列表
    10 # append、extend、insert
    11 # 索引、切片、循环
    12 # 四、元组
    13 # 忽略
    14 # 索引、切片、循环         以及元素不能被修改
    15 # 五、字典
    16 # get/update/keys/values/items
    17 # for,索引
    18 
    19 # dic = {
    20 #     "k1": 'v1'
    21 # }
    22 
    23 # v = "k1" in dic
    24 # print(v)
    25 
    26 # v = "v1" in dic.values()
    27 # print(v)
    28 # 六、布尔值
    29 # 0 1
    30 # bool(...)
    31 # None ""  () []  {} 0 ==> False

    其他                                                                                                                                                                                            

     
    1、for循环
    用户按照顺序循环可迭代对象中的内容,
    PS:break、continue
    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(1, 10)
    # 结果:[1, 2, 3, 4, 5, 6, 7, 8, 9]
     
    print range(1, 10, 2)
    # 结果:[1, 3, 5, 7, 9]
     
    print range(30, 0, -2)
    # 结果:[30, 28, 26, 24, 22, 20, 18, 16, 14, 12, 10, 8, 6, 4, 2]
  • 相关阅读:
    配置了configuration.xml之后提示找不到映射关系
    alibaba maven地址
    Linux通过FTP上传文件到服务器
    JS模拟PHP的sleep
    PHP设置会话(Session)超时过期时间实现登录时间限制[转]
    JavaScript with JSONPath
    用于解析通过JS的escape函数加密过的数据
    IDC、ICP、ISP区别
    zTree通过指定ID找到节点并选中
    运动轨迹[转]
  • 原文地址:https://www.cnblogs.com/sunkai1993/p/6091156.html
Copyright © 2011-2022 走看看