Python基础知识学习_Day3

Python基础知识学习_Day3

大家好,又见面了,我是全栈君。

一、字典用法

字典是一种key-value数据类型,通过key获取具体value的内容,字典的特性是无序、去重。

增删改查用法如下:

1.1基本增删改查操作

 1 name = {
   
   "name":"alex","age":"18","xx":{
   
   "ed":3000,"ye":2000}}
 2 print(name["name"])   #打印name对应的value的内容
 3 print(name.get("name")) #select
 4 name["sex"] = "boy"  # add
 5 print(name)
 6 del name["sex"] #del
 7 print(name)
 8 name.pop("name") #del
 9 print(name)
10 name.clear() #清空字典
11 print(name)
12 name2 = name.copy() #浅copy,只修改第一层,第二层不变。
13 name2["sex"] = "girl"
14 name2["xx"]["ye"] = "1000"
15 print(name)
16 print(name2)
17 print(name.fromkeys("alex","3")) #分别赋值
18 print(name.keys()) #打印所有key

1.2 字典循环用法

1 方法1.
2 name = {
   
   "name":"alex","age":"18","xx":{
   
   "ed":3000,"ye":2000}}
3 for i in name:   #这种for 以后常用
4     print(i,name[i]) #打印key value的值
5 
6 方法2.
7 for k,v in name: #会先把dict转成list,数据里大时莫用
8     print(k,v)

1.3 三级菜单经典版

Python基础知识学习_Day3
Python基础知识学习_Day3

 1 menu = {  2 '北京':{  3 '海淀':{  4 '五道口':{  5 'soho':{},  6 '网易':{},  7 'google':{}  8  },  9 '中关村':{ 10 '爱奇艺':{}, 11 '汽车之家':{}, 12 'youku':{}, 13  }, 14 '上地':{ 15 '百度':{}, 16  }, 17  }, 18 '昌平':{ 19 '沙河':{ 20 '老男孩':{}, 21 '北航':{}, 22  }, 23 '天通苑':{}, 24 '回龙观':{}, 25  }, 26 '朝阳':{}, 27 '东城':{}, 28  }, 29 '上海':{ 30 '闵行':{ 31 "人民广场":{ 32 '炸鸡店':{} 33  } 34  }, 35 '闸北':{ 36 '火车战':{ 37 '携程':{} 38  } 39  }, 40 '浦东':{}, 41  }, 42 '山东':{}, 43 } 44 current_level = menu #定义当前层 45 last_levels = [] #标记级别 46 while True: 47 for key in current_level: 48 print(key) 49 choice = input("pls input city:").strip() 50 if choice == 0:continue #输入为空,继续输入 51 if choice =='b': #退出判断 52 if len(last_levels) ==0: break #回到第一层,退出程序 53 current_level = last_levels[-1] #返回上一层 54 last_levels.pop() #删掉当前层 55 if choice not in current_level:continue #如果输入错误,继续输入 56 last_levels.append(current_level) #记录当前层 57 current_level = current_level[choice] #进入下一层

三级菜单程序

 

二、集合用法

 集合是无序的不重复的数据组合,可以测试两个集合直接的交集、并集、差集等

2.1集合的基本用法

 1 s1 = {1,2,3,4,5}  2 s2 = {2,3,6,7}  3 s3 = {2,3}  4 print(s1.intersection(s2))#交集  5 print(s1&s2) #交集  6 print(s1.difference(s2))#差集  7 print(s2.difference(s1))#差集  8 print(s1-s2) #差集  9 print(s1.union(s2)) #合集 10 print(s1|s2) #合计 11 print(s1.symmetric_difference(s2))#对称差集 12 print(s2.symmetric_difference(s1))#对称差集 13 print(s1^s2) #对称差集 14 print(s3.issuperset(s1)) #子集 15 print(s1.issuperset(s3)) #子集 16 print(s3<s1) #子集

 三、字符编码集

用什么字符集写入就用什么字符集读取。

内存都是unicode编码,统一字节,高效。

Python基础知识学习_Day3

四、文件操作

4.1基本操作

主要分三步,打开文件,处理文件,关闭文件。

1 f =open('a.txt','r') #只读方式打开文件 2 first_line = f.readline() #只读一行 3 data = f.read()# 读取剩下的所有内容,文件大时不要用 4 f.close() #关闭文件

4.2 基本选项

r,只读模式打开(默认)

w,只写模式打开(清空原文件内容)

a,追加模式(相当于列表里面的append),可以读。

r+,读写模式

w+, 写读模式

rb wb ab 表示处理二进制文件。

4.3 文件字符替换

1 f = open('test',encoding="utf-8") 2 for i in f: 3 if "hello" in i: 4 i = i.replace("hello","good") 5 print(i)

 4.4 文件光标移动

f = open('test',encoding="utf-8") f.seek(10) #移动文件光标到第10个字节 print(f.read()) print(f.tell()) #显示当前光标位置

 

转载于:https://www.cnblogs.com/liumj0305/p/5991904.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/108824.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • Hystrix:服务熔断

    Hystrix:服务熔断文章目录服务雪崩服务雪崩​多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其他的微服务,这就是所谓的“扇出”,如果扇出的链路上某个微服务的调用响应时间过长,或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩溃,所谓的“雪崩效应”。​对于高流量的应用来说,单一的后端依赖可能会导致所有服务器上的所有资源都在几十秒内饱和。比失败更糟糕的是,这些应用程序还可能导致服务之间的延迟增加,备份队列,线程和其他系统资源紧张,导致整个系统发生更多的级联故障,

    2022年10月21日
  • Lamp环境搭建与配置(详细配置)「建议收藏」

    Lamp环境搭建与配置(详细配置)「建议收藏」Lamp环境搭建与配置知识介绍L:linuxA:apacheM:mysqlP:php三个角色可以在同一台机器也可以分开(Apache和PHP要在一起)工作模式:PHP是以模块的形式与A

  • js删除数组中的一个元素_js数组包含某个元素

    js删除数组中的一个元素_js数组包含某个元素目录第一种:删除最后一个元素pop删除slice删除splice删除for删除length删除第二种:删除第一个元素shift删除slice删除splice删除第三种:删除数组中某个指定下标的元素splice删除for删除第四种:删除数组中某个指定元素splice删除filter删除forEach、m…

  • tree命令详解

    tree命令详解命令:tree命令说明:以树状格式列出目录的内容,查看文件系统的结构命令用法:tree[选项]…[文件]…参数说明:参数参数说明备注-a打印所有文件,包括隐藏文件、目录-C在文件和目录清单上加上色彩,便于区分文件类型-d仅列出目录名称,而非内容-D列出文件或目录更改时间-L目录树的最大显示深度-p打印结构同时打印文件权限-l跟随目录的符号链接,就像它们是目录一样。避免了导致递归循环的链接-f打印每个

  • 基于量化交易回测的金融股票案例基础知识[通俗易懂]

    基于量化交易回测的金融股票案例基础知识[通俗易懂]1量化交易定义量化交易是指以先进的数学模型替代人为的主观判断,利用计算机技术从庞大的历史数据中海选出能带来超额收益的多种“大概率”事件以制定策略。它极大的降低了市场波动给投资者情绪带来的影响,避免在市场极度狂热或者悲观的情况下做出非理性的投资决策。2量化交易分类趋势性交易:适合一些主观交易的高手,用技术性指标作为辅助工具在市场中如鱼得水的,但如果只用各种技术指标或指标组合作为核心算法…

  • pycharmdjango项目实战_django项目实例精解

    pycharmdjango项目实战_django项目实例精解创建项目我们创建django项目有两种方式,命令行方式和使用pycharm工具创建,本文就介绍常用的pycharm工具创建首先点击django,输入项目的名称,选择创建好的虚拟环境,最后点击cre

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号