zoukankan      html  css  js  c++  java
  • 我的Python分析成长之路2

                                                                                                                                                                                                            2018-12-29

    一、python数据类型:

      1.数字   int(整形) float(浮点型) complex(复数型)

      2.布尔值(bool)       真或假 True or False

      3.字符串(str)  

      4.byte型

      5.列表[list]

      6.元组(tuple)

      7.字典(dict)

      8.集合(set)

    二、二进制、八进制、十进制、十六进制

      bin() 将十进制转换成二进制   以0b开头      十六进制如何转化为二进制   我们需要先将十六进制先转化为十进制,然后将十进制转化为二

      oct() 将十进制转化为八进制  以0o开头

      hex() 将十进制转化为16    以0x开头

      

    1 print(bin(15))   #十进制转化为二进制
    2 print(hex(15))    #十进制转化为十六进制
    3 print(oct(15))    #十进制转化为八进制
    4 print(int(bin(15),2))  #二进制转化为十进制   
    5 print(bin(int(hex(12),16)))  #十六进制转二进制

    三、bytes与str转化 

        bytes ------------》str    解码  decode

        str----------------》bytes   编码  encoding  

    1 name ="xiaoming"
    2 name2 = "小明"
    3 print(name.encode(encoding='utf-8'))
    4 print(name2.encode(encoding='utf-8'))
    5 print(name2.encode(encoding='utf-8').decode('utf-8'))
    ord() 将字符转换成ascii值
    chr() 接受的是0-255,返回的是对应的ascii值的字符
    1 print(ord('c'))
    2 print(chr(65))

    四 列表 

      列表是一系列按照特定顺序排列的元素组成。列表中可以包含字母、数字、也可以将任何东西放入列表中,用[]表示,并用,分隔每个元素。

      

     1 l1 =["xiaoyun",'mingming','dahong','feiyu','chanchan']
     2 print(l1[0])  #查找列表中索引为的元素
     3 l1[1:3] #列表中索引为1、2的元素
     4 l1.append('xiaobai')  #增加一个元素
     5 l1.copy()   #浅copy
     6 l1.count("xiaoyun")   #统计列表中xiaoyun 的个数
     7 l1.clear()  #清空列表
     8 l1.extend([1,2,3])   #增加一个列表
     9 l1.insert(1,"lingling")  #在列表索引为1的位置插入lingling
    10 l1.index("mingming")  #列表中mingming的索引位置
    11 l = l1.pop()   #删除最后一个元素并返回
    12 l1.reverse()  #列表反序排列
    13 l1.remove("dahong")  #把dahong从列表中移除
    14 l1.sort()   #排序

    五、字符串操作

     1 name = "xiaoming"
     2 name.count("i")  #统计i的个数
     3 name.capitalize()  #将首字母改成大写
     4 name.center(20,"-")  #总共20个占位符将xiaoming放中间,其余用-填充
     5 name.endswith("g") #判断以什么结尾 返回一个bool值
     6 name.find('o') #返回o所在的索引,如果元素不存在则返回-1
     7 name.isdigit()#判断是否为数字
     8 name.index('i')  #第一个i的索引
     9 name.isalnum() #判断是否为字母
    10 name.isidentifier()#判断是否是一个合法标识符
    11 name.islower()#判断是否为小写
    12 name.istitle()  #判断首字母是否大写
    13 name.isupper()  #判断是否为大写
    14 name.ljust(20,"-") #左对齐 总共20个占位符,其余用-填充
    15 name.lower()  #改成小写
    16 name.lstrip()  #左边删除空格和回车
    17 name.replace('a','b')  #将a改成b
    18 name.rjust(20,'-')#右对齐,总共20个占位符,其余用-填充
    19 name.rstrip()  #右边删除空格和回车
    20 name.split('i')  #以'i’分割
    21 name.strip()  #删除空格和回车
    22 name.startswith("x")#判断是否以x开始
    23 name.swapcase()  #转换大小写
    24 name.title() #标题形式
    25 name.upper()  #改成大写
     1 '''
     2 购物车程序   
     3 1.启动程序后,让用户输入工资,然后打印商品列表
     4 2.允许用户根据编号购买商品
     5 3.用户选择商品后,来检查余额是否够,够就直接扣款,不够就提醒
     6 4.随时退出,退出时,打印它已购买的商品和余额
     7 '''
     8 shopping_list = [('IphoneXS',9000),('Mac Pro',11000),('watch',250),('huawei',3000)]
     9 shopping_car = []
    10 money = input("请输入您的钱:")
    11 while True:
    12     money =int(money)
    13     for i,shopping in enumerate(shopping_list):
    14         print(i,shopping)
    15     choice = input("请输入您要购买的商品:")
    16         # print(type(choice))
    17     if choice.isnumeric():
    18         choice = int(choice)
    19         if 0<= choice and choice<len(shopping_list):
    20             p_item = shopping_list[choice]
    21             if p_item[1]<money:
    22                 shopping_car.append(p_item)
    23                 money -= p_item[1]
    24                 print("%s 以加入购物车,还剩33[31;1m%s33[0m"%(p_item,money))
    25             else:
    26                 print("33[41;1m您还剩%s,不能购买33[0m"%money)
    27         else:
    28             print("invalid shopping")
    29 
    30     elif choice =='q':
    31         for i in shopping_car:
    32             print("您已购买%s,还剩%s"%(i,money))
    33             exit()
    View Code

    六、字典

      字典是一些列键-值对,每个键都与一个值相关联。你可以通过键来访问与之相关联的值。与键相关联的值可以是数字、字符串、列表乃至字典。事实上,可将任何python对象当作字典中的值。

     1 user_info ={'name':'xiaoming','age':18,'sex':'boy','job':'student'}
     2 user_info['name']  #查找name所对应的值
     3 del user_info['name']  #删除name信息
     4 user_info['name'] = "shanshan"  #添加name属性对应的值为shanshan
     5 user_info['name'] ='beibei'   #将name所对应的值改成beibei
     6 user_info.copy()  #浅copy
     7 user_info.clear()  #删除 所有信息
     8 user_info.fromkeys('hobby','swimming')#添加hobby属性,对应的值为swimming 如果添加的属性原来存在,就不覆盖
     9 user_info.get('d')   #获得name中的值 ,当字典中不存在时,返回None
    10 user_info.items()  #将键-值对以元组的形式放在字典列表中
    11 user_info.keys()  #字典的键
    12 user_info.pop('name')  #删除name属性 ,相当于del  当不传参数时,随机删除一个
    13 
    14 user_info.popitem()   #随机以元组的形式返回删除的键值对
    15 user_info.setdefault('name','swimming')   #添加hobby属性 ,如果原来字典中存在就不添加
    16 print(user_info)
    17 user_info1 = {"name":'zqq'}
    18 user_info.update(user_info1) #键user_info与user_info1字典合在一起,如果拥有相同的键,就会覆盖前面的值
    19 print(user_info)
    20 user_info.values()#字典的值
    21 for i in user_info:
    22     print(i,user_info[i])   #遍历所有的键,输出键和对应的值
    23 for k,v in user_info.items():
    24     print(k,v)   #分别遍历键和值,并输出
    View Code
     1 #省市县三级
     2 #只选择浙江 
     3 
     4 
     5 
     6 
     7 data ={'北京':{'海淀区':['圆明园','凤凰岭自然风景区'],
     8        '东城区':['王府井','地坛公园'],
     9        '丰台区':['千灵山','卢沟桥']},
    10  '上海':{'浦东新区':['上海迪士尼旅游区','上海浦东国际机场'],
    11        '虹口区':['鲁迅公园','和平公园'],
    12        '长宁区':['中山公园','近中山公园']},
    13  '浙江':{
    14      '杭州':{
    15          '上城区':['中豪望江国际','河坊街景区','八卦田遗址公园','南落马英体育公园'],
    16            '西湖区':['西溪湿地国家公园','西湖景区','雷峰塔景区','杭州植物园'],
    17            '滨江区':['六和文化公园','彩虹城','东方通信科技园','杭州高新金盛科技园']
    18      },
    19      '衢州':{
    20          '常山':['金钉子','三衢石林'],
    21         '江山':['江郎山','春雕花尖'],
    22            '龙游':['龙游石窟','乌龟山']
    23      },
    24      '金华':{'义乌':['五指山','大峰山'],
    25            '永康':['牛角尖','十八曲岭'],
    26            '武义':['牛头山国家公园','台山寺旅游区']}}}
    27 while True:
    28     for i in data:
    29         print(i)
    30     choice = input("请输入您要去的省:")
    31     if choice in data:
    32         while True:
    33             for i2 in data[choice]:
    34                 print(i2)
    35             choice2 = input("请输入您要去的市:")
    36             if choice2 in data[choice]:
    37                 for i3 in data[choice][choice2]:
    38                     print(i3)
    39                 choice3 = input("请输入你要去的县:")
    40                 if choice3 in data[choice][choice2]:
    41                     print(data[choice][choice2][choice3])
    42                 choice4 = input("请输入b返回上一层:")
    43                 if choice4 =='b':
    44                     pass
    45 
    46             elif choice2 == 'b':
    47                   break
    48     elif choice =='b':
    49         break
    50     else:
    51         print("没有这个选项,请重新选择")
    View Code
    1 ti = {"a":1,"d":3,"b":2}
    2 print(sorted(ti.items(),key=operator.itemgetter(1)))   #两种方式等价
    3 print(sorted(ti.items(),key=lambda x:x[1],reverse=True))
    View Code
  • 相关阅读:
    Linux 如何改变文件属性与权限: chgrp, chown, chmod
    Linux 路径与命令搜寻顺序
    Log level with log4j and Spark
    java.lang.IllegalStateException: availableProcessors is already set to [4], rejecting [4]
    max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
    JavaScript Promise异步实现章节的下载显示
    npm-folders
    the user operation is waiting for building workspace to complete解决办法
    Eclipse,新建web项目后 出现jax-ws webservice
    ServletContext在tomcat启动的时候创建
  • 原文地址:https://www.cnblogs.com/Ezhizen/p/10193178.html
Copyright © 2011-2022 走看看