基本语句
输入:input()
输出:print()
注释:#
字符串类型:str
空值用None表示多行输入:'''...'''
内部字符默认不转义:r'''...'''
获取字符的整数表示:ord()
将字符编码转化为字符:chr()
bytes类型用带b前缀的单引号或双引号表示:b'字符'
将str类型数据转为指定的bytesr类型数据:'字符'.encode('原编码类型')
示例语句如下:
print('a'.encode('ascii'))
注意:python是4个空格缩进的,区分大小写。
含有中文的str类型无法用ASCII编码,在bytes中无法显示ASCII字符的字节,会以##代替显示
将bytesr类型数据转为str类型数据:b'字符'.decode('str的编码类型')
示例语句如下:
print(b'a'.decode('ascii'))
注意:若bytes中只有一小部分无效的字节,可用errors='ignore'
语句忽略错误的字节。
计算str的字符数:len()
将源代码按UTF-8编码保存:
1 | #!/usr/bin/env python3 |
申明UTF-8编码外,必须还要确保文本编辑器正在使用UTF-8 without BOM
编码
格式化字符串的三种方法
占位符格式化字符串:
输出整形数据的语句:print('%d' % 123)
输出小数点后2位数的语句:print('%.2f' % 3.1415926)
format()格式化字符串
例子如下:
1 | print('''{0}在考试中提升了{1:.2f}%, |
用f-string格式化字符串
例子如下:
1 | a='张三' |
练习题
小明的成绩从去年的72分提升到了今年的85分,请计算小明成绩提升的百分点,并用字符串格式化显示出xx.x%
,只保留小数点后1位:
代码如下:
1 | # -*- coding utf-8 -*- |
列表list和元组tuple
列表list
list是一种有序的集合,可随时增减其中的元素。
形式如同 name=['Zhangsan','Lisi','Wangwu']
,指的是定义一个name列表,name为该列表的名称,与C语言中的数组相似,其区别在于list中的元素数据类型可以不同,元素可以是另一个list。
定义一个空列表,其列表名称为name:name()
获取列表中元素的个数
如获取name列表元素的个数:len(name)
使用索引获取列表中的最后一个元素
如获取name列表中的最后一个元素:name[-1]
在列表末尾增加元素
如在name列表末尾追加元素Bob:name.append('Bob')
将元素插入到列表中的指定位置
如将元素Jack插入到name列表指定的位置,如索引号为1的位置:name.insert(1,Jack)
删除列表末尾的元素
如删除name列表末尾的元素:name.pop()
删除列表指定位置的元素
如删除name列表中索引号为1的元素:name.pop(1)
替换列表中指定位置的元素
如将name列表中索引号为1的元素换成Xiaoming:name[1]='Xiaoming'
列表中的元素包含另一个list时,若想要取内嵌list元素的值,可将list看做二维数组来进行取值,如下面取s列表中php的值,可写成:
1 | s=['python','java',['asp', 'php'],'scheme'] |
元组tuple
tuple是一种有序的列表,元组一旦初始化就不能修改,tuple一旦被定义,其元素就必须要确定下来。
形式如同name=('Zhangsan','Lisi','Wangwu')
,指的是定义一个name元组,name为该元组的名称,与list类似,但tuple没有append()、insert()这类的方法,获取元素的方法与list相同,但不能给元素赋值。
定义空的tuple
如定义空元组name:name=()
定义只有1个元素的tuple
如定义只有1个元素的元组name:name=(1,)
注意:将只有1个元素的tuple若误写成name=(1),该语句定义的不是元组tuple类型,其实际是指1经过数学小括号运算后,将结果赋给name。
当元组的元素中含有列表时,可以改变元组中的列表元素,此时元组是“可变的”,但其本质上元组没变,改变的是列表。如下列代码改变的是列表中元素的值:
1 | name=('Zhangsan','Lisi',['A','B']) |
此时元组name中的元素变成了('Zhangsan', 'Lisi', ['X', 'Y'])
,改变的仅是列表中的元素。
练习题
请用索引取出下面list的指定元素:
1 | # -*- coding: utf-8 -*- |
代码如下: 1
2
3
4
5
6# 打印Apple:
print(L[0][0])
# 打印Python:
print(L[1][1])
# 打印Lisa:
print(L[2][2])