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 以加入购物车,还剩\033[31;1m%s\033[0m"%(p_item,money))
25             else:
26                 print("\033[41;1m您还剩%s,不能购买\033[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

转载于:https://www.cnblogs.com/Ezhizen/p/10193178.html

我的Python分析成长之路2相关推荐

  1. 我的Python分析成长之路8

    Numpy数值计算基础 Numpy:是Numerical Python的简称,它是目前Python数值计算中最为基础的工具包,Numpy是用于数值科学计算的基础模块,不但能够完成科学计算的任而且能够用 ...

  2. 我的Python分析成长之路1

    Python是什么?                                                                                           ...

  3. 我的Python分析成长之路4

    一.函数 1.什么是函数?:函数是带名字的代码块,调用函数,只要调用函数名就可以.    2.函数的性质:1.减少重复代码 2.使程序变得可扩展 3.使程序变得易维护 3.编程范示: 1.面向对象编程 ...

  4. 我的Python分析成长之路9

    pandas入门 统计分析是数据分析的重要组成部分,它几乎贯穿整个数据分析的流程.运用统计方法,将定量与定性结合,进行的研究活动叫做统计分析.而pandas是统计分析的重要库. 1.pandas数据结 ...

  5. python爬虫成长之路(一):抓取证券之星的股票数据

    python爬虫成长之路(一):抓取证券之星的股票数据 获取数据是数据分析中必不可少的一部分,而网络爬虫是是获取数据的一个重要渠道之一.鉴于此,我拾起了Python这把利器,开启了网络爬虫之路. 本篇 ...

  6. Python爬虫成长之路:抓取证券之星的股票数据(转)

    获取数据是数据分析中必不可少的一部分,而网络爬虫是是获取数据的一个重要渠道之一.鉴于此,我拾起了Python这把利器,开启了网络爬虫之路. 本篇使用的版本为python3.5,意在抓取证券之星上当天所 ...

  7. 精品课python_python工程师成长之路精品课程(全套)

    python工程师成长之路精品课程(全套)  有需要联系我:QQ:1844912514 什么是Python? Python是一门面向对象的编程语言,它相对于其他语言,更加易学.易读,非常适合快速开发. ...

  8. python linux运维教程 推荐_Linux运维人员成长之路学习书籍推荐

    原标题:Linux运维人员成长之路学习书籍推荐 一.入门书: <鸟哥的私房菜(基础篇)> <鸟哥的私房菜(服务篇)> <Linux命令行与Shell脚本编程大全(第2版) ...

  9. 【Python成长之路】Python爬虫 --requests库爬取网站乱码(\xe4\xb8\xb0\xe5\xa)的解决方法【华为云分享】

    [写在前面] 在用requests库对自己的CSDN个人博客(https://blog.csdn.net/yuzipeng)进行爬取时,发现乱码报错(\xe4\xb8\xb0\xe5\xaf\x8c\ ...

最新文章

  1. 通俗解释指数加权平均
  2. 崛起吧,亲爱的,该背单词了!!!
  3. 电压kV为什么k要小写,原因你知道吗?
  4. 山东省2021年高考成绩查询平台6,山东2021年高考成绩改为6月26日前公布
  5. Python 的post请求 get请求实例
  6. 【转】将QT开发的界面程序封装成DLL,在VC中成功调用
  7. java.lang.OutOfMemoryError: Java heap space错误和方法(集、转)
  8. 如何有效管理项目进度?管控关键里程碑?
  9. 录屏可以录声音吗?录制带声音的视频,这个方法轻松解决
  10. element plus之el-table行融合+列融合+小计行+自定义控件+样式自定义方案
  11. 2023年网络安全比赛--跨站脚本攻击①中职组(超详细)
  12. 2022-2028年全球与中国机身导线行业产销需求与投资预测分析
  13. 国密gmssl命令行生成SM2证书
  14. 1000瓶无色无味的药水,其中有一瓶毒药,10只小白鼠拿过来做实验。喝了无毒的药水第二天没事儿,喝了有毒的药水后第二天会死亡。如何在一天之内(第二天)找出这瓶有毒的药水?
  15. windows下x265编译
  16. C++静态成员变量与静态成员函数
  17. Flutter中Drat虚拟机服务介绍 --- VmService
  18. vue-cli 组件传值:父传子props
  19. SVA 断言翻译笔记 16.13多时钟序列语法(九)
  20. Sherlock and the Encrypted Data

热门文章

  1. 178685-33-1,Azide-PEG3-Tos叠氮化物(N3)基团通过点击化学与炔烃、BCN、DBCO反应
  2. notepad拼心形_用shell脚本写个心形动画表格
  3. Horizon client PcoIP连接桌面后黑屏断开,报:与远程计算机的连接终止
  4. 2021上海建筑施工八大员之安全员模拟题集及答案解析
  5. 第十一届 蓝桥杯 单片机设计与开发项目 决赛
  6. tracker使用_如何使用Tracker查找钥匙,钱包,电话或其他任何东西
  7. 虚拟盘可以挂载多个服务器吗,两台云服务器挂载一个云硬盘吗
  8. 【C语言】简单的飞机游戏
  9. 简单的科普(引导模式、分区格式)
  10. 标题、首图、详情页:三位一体的搜索优化技巧