1.每天一点点之python - 基础语法
先来看段简单代码:
#!/usr/bin/env python3 # print absolute value of an integer: a = 100 print(A) # name 'A' is not defined if a >= 0: print(a) else: print(-a)
说明:
- # 表示注释
- 用缩进来代替大括号
- 区分大小写,如果写错了大小写,程序会报错。
一、数据类型和变量
一)数据类型
1、整数和浮点数
整数:比如1,200,-1000,0,也有用十六进制表示的比如0xff00等
浮点数:比如1.11,12,13,-10.02,也有比较大的浮点数比如2.12x10^9
2、字符串:单引号、双引号、三引号
python的字符串以''或者""或者''''''括起来的随意文本都是字符串。
字符串里面包含特殊的字符,可以用转义\进行转义
word='Xiao Ming said \"I\'am full\".' print(word) >>Xiao Ming said "I'am full".
三引号一般用在类或者函数的开头用来做大段的注释用
python的字符串格式化:
1) %操作符
name="xiao ming" age=20 print("Your name is %s,age is %d"%(name,age))
2) .format
name="xiao ming" age=20 print("Your name is {0},age is {1}".format(name,age)) print("age is {1},your name is {0}".format(name,age))
.format的用法比较灵活,参数的顺序和格式化的顺序不必完全相同
3) f-string
还可以通过“f+字符串”来实现格式化
>>> r = 2.5 >>> s = 3.14 * r ** 2 >>> print(f'The area of a circle with radius {r} is {s:.2f}') The area of a circle with radius 2.5 is 19.62
上述代码中,{r}
被变量r
的值替换,{s:.2f}
被变量s
的值替换,并且:
后面的.2f
指定了格式化参数(即保留两位小数),因此,{s:.2f}
的替换结果是19.62
。
3、布尔值
Python中的布置值,只有True和False两种(一定要注意大小写),布尔值的运算可以用and,or 和not
4、空值
Python的空值是用None表示,None不是0,也不是空字符串,也不是False,它是一个特殊的空值
>>> type(None) <class 'NoneType'>
>>> None == 0 False
>>> None == '' False
>>> None == None True
>>> None == False False
二)变量
python的变量名必须是大小写的英文字母,数字和下划线(_)的组合,切记不能用数字开头
a=10 n_1=1000 a='wang01'
三)常量
所谓常量就是不能变的变量。在Python中,通常用全部大写的变量名表示常量:
PI = 3.14159265359
四)整数的除法
在Python中,有两种除法,一种除法是/,一种是//。
>>> 10 / 3 3.3333333333333335 >>> 9 / 3 3.0 >>> 10 // 3 3
二、list和tuple
一)list
1.创建list
list内部元素可以是字符串、字符、数字,支持混搭
aList = ['apple', 100, 0.01, 'banana','A','B','C']
2.访问list
直接通过下标访问,需要注意下标国界问题
>>> print(aList[0]) apple >>> print(aList[7]) Traceback (most recent call last): File "<stdin>", line 1, in <module> IndexError: list index out of range
如果想要访问最后一个元素,或者从后面开始访问,也可以通过“-”来实现:
>>> print(aList[-1]) C
3.列表的切片
通过切片获取列表中的一部分
>>> print(aList[1:3]) [100, 0.01]
注意:索引包前不包后,即 [)。
4.列表的嵌套
列表可以嵌套列表、字典、元组等。
>>> bList=[100,200,['aaa','bbb','ccc']] >>> bList[0] 100
5.列表的插入
内置函数append、insert进行插入操作。
>>> aList ['apple', 100, 0.01, 'banana', 'A', 'B', 'C'] >>> aList[1]=111 >>> aList ['apple', 111, 0.01, 'banana', 'A', 'B', 'C'] >>> aList.append('D') >>> aList ['apple', 111, 0.01, 'banana', 'A', 'B', 'C', 'D'] >>> aList.insert(0,'python') >>> aList ['python', 'apple', 111, 0.01, 'banana', 'A', 'B', 'C', 'D']
6.列表的删除
内置函数remove、pop进行删除操作。
a. 使用del,通过索引删除
>>> del aList[0] >>> aList ['apple', 111, 0.01, 'banana', 'A', 'B', 'C', 'D']
b. 使用remove删除元素
>>> aList.remove('B') >>> aList ['apple', 111, 0.01, 'banana', 'A', 'C', 'D']
c. 使用pop弹出最后一个元素,返回被删除元素
>>> aList.pop() 'D' >>> aList ['apple', 111, 0.01, 'banana', 'A', 'C']
当然,也可以通过索引删除对应值
>>> aList.pop(1) 111 >>> aList ['apple', 0.01, 'banana', 'A', 'C']
7.列表的拼接(+)、循环复制(*)
>>> list1=[1,2,3] >>> list2=[100,200,300] >>> list3=list1+list2 >>> list3 [1, 2, 3, 100, 200, 300] >>> list4=['a','b'] >>> list5=list4*3 >>> list5 ['a', 'b', 'a', 'b', 'a', 'b']
注意:使用“+”拼接的列表返回的是一个新的列表
8.列表的排序
排序可以通过内置函数sort进行排序,接受一个参数,reverse=False生序,reverse=True降序,不填默认生序。
>>> bList=[1,20,50,30,-10,-40,100] >>> bList.sort(reverse=False) >>> bList [-40, -10, 1, 20, 30, 50, 100] >>> bList.sort(reverse=True) >>> bList [100, 50, 30, 20, 1, -10, -40]
9.计算列表长度
通过内置方法len计算长度。
>>> aList=[1,2,3,4,5] >>> len(aList) 5
10.计算列表中的最大值、最小值
使用内置函数max、min获取列表中的最大值和最小值
>>> min(aList) 1 >>> max(aList) 5
11.列表的扩展
使用内置函数extend进行扩展,与+不同的是,+是返回新的列表,extend返回的是当前列表。
>>> aList=[1,2,3] >>> bList=[4,5] >>> aList.extend(bList) >>> aList [1, 2, 3, 4, 5]
12.查询列表中元素的索引
使用内置函数index获取对应索引值
>>> aList=['a','b','c'] >>> aList.index('b') 1
13.统计元素出现的次数
使用内置函数count获取
>>> aList=['a','b','c','a','d','a','e'] >>> aList.count('a') 3
注意:列表是支持重复元素的。
二)元组
元组(tuple)和列表(list)一样,也是一种序列,唯一的不同在于不能修改。
1.元组的创建
>>> aTuple=(1,2,3) >>> aTuple (1, 2, 3)
注意:当元组只有一个元素的时候,后面需要加逗号,如(100,)
2.元组的用法
元组的用法和列表一样,那为什么会有元组呢,在什么场景下需要使用元组:
- 一些特殊场合需要不可变序列
- 一些内建函数的返回值