Python学习基础知识概要
1.输入输出
输出实例
2.字符表示
十进制正常表示,十六进制最前面加 0x,小数正常表示,科学计数法表示 1.23×109就是1.23e9,或者 12.3e8
转义符 \
转义符实例:
多行内容表示,用三引号包括
布尔值的表示 True 和 False
空值 None,相当于Java,C 中的 null
Unicode表示的字符串用 u’…’ 表示,转化成 UTF-8 编码
1 2 3 4 | >>> u 'ABC' .encode( 'utf-8' ) 'ABC' >>> u '中文' .encode( 'utf-8' ) '\xe4\xb8\xad\xe6\x96\x87' > |
文本文件编码
3.格式化
格式化输出实例
1 2 3 4 | >>> 'Hello, %s' % 'world' 'Hello, world' >>> 'Hi, %s, you have $%d.' % ( 'Michael' , 1000000 ) 'Hi, Michael, you have $1000000.' |
1 2 3 | >>> s = 'Hello, {}' . format ( 'world' ) >>> s 'Hello, world' |
格式化整数和小数
1 2 3 4 | >>> '%2d-%02d' % ( 3 , 1 ) ' 3-01' >>> '%.2f' % 3.1415926 '3.14' |
万能格式化 %s,可以代替所有格式化
对于Unicode字符串,用法完全一样,但最好确保替换的字符串也是Unicode字符串:
1 2 | >>> u 'Hi, %s' % u 'Michael' u 'Hi, Michael' |
输出百分号 %,用双 % 即可
4.列表 list
列表 list ,可变的有序表
len函数获取它的长度
取得某个元素,可以用中括号索引
1 2 3 4 5 6 7 8 | >>> classmates[ 0 ] 'Michael' >>> classmates[ 1 ] 'Bob' >>> classmates[ 2 ] 'Tracy' >>> classmates[ 3 ] Traceback (most recent call last): |
倒数索引
append 追加元素到末尾
1 2 3 | >>> classmates.append( 'Adam' ) >>> classmates [ 'Michael' , 'Bob' , 'Tracy' , 'Adam' ] |
insert 插入到指定位置
pop 删除末尾元素
pop 加入参数删除指定元素
元素改变,直接赋值即可
list可以嵌套,可用二维索引
空列表
1 2 3 | >>> L = [] >>> len (L) 0 |
5.元组 tuple
不可变有序的数组
定义元组
空的元组
一个元素的元组
注意不能用 t = (1) 来定义, 因为它定义的不是tuple,是 1 这个数,这是因为括号既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义,因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1。
表面上可变的tuple
表面上看,tuple的元素确实变了,但其实变的不是tuple的元素,而是list的元素。tuple一开始指向的list并没有改成别的list,所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向 ‘a’,就不能改成指向 ‘b’ ,指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的!
6.字典 dict
字典 dict 即键值对组,dict的key必须是不可变对象。
把数据放入dict的方法,除了初始化时指定外,还可以通过key放入,在这之前,d 必须被声明,否则会报错
判断key是否在字典中
1. in 判断
2. 通过dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value
要删除一个key,用 pop(key) 方法,对应的value也会从dict中删除
7.集合 set
set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。
要创建一个set,需要提供一个list作为输入集合:
重复元素在set中自动被过滤:
通过 add(key) 方法可以添加元素到set中,可以重复添加,但不会有效果:
通过 remove(key) 方法可以删除元素:
判断元素是否在set中
set可以看成数学意义上的无序和无重复元素的集合,因此,两个set可以做数学意义上的交集、并集等操作:
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· DeepSeek 解答了困扰我五年的技术问题。时代确实变了!
· PPT革命!DeepSeek+Kimi=N小时工作5分钟完成?
· What?废柴, 还在本地部署DeepSeek吗?Are you kidding?
· DeepSeek企业级部署实战指南:从服务器选型到Dify私有化落地
· 程序员转型AI:行业分析