1、几个概念
1.1 表达式
-
表达式,是由数字、算符、数字分组符号(括号)、自由变量和约束变量等以能求得数值的有意义排列方法所得的组合,简单来说,表达式就是一个类似于数学公式的东西。
-
表达式的特点:
- 一般仅仅用于计算一些结果,不会对程序产生实质性的影响
- 如果在交互模式中输入一个表达式,解释器会自动将表达式的结果输出
1.2 语句
- 语句,是一个在语法上自成体系的单位,它由一个词或句法上有关联的一组词构成。在程序中一般语句需要完成某种功能
- 语句的执行一般会对程序产生一定的影响,在交互模式中不一定会输出语句的执行结果
1.3 程序
程序是由一条一条的语句和一条一条的表达式构成的。
1.4 函数
-
函数就是一种语句,专门用来完成特定的功能
-
函数形如:xxx()
-
函数分类:
- 内置函数(内建函数),就是由语法规定存在的函数,这些函数,包含在编译器的运行时库中,程序员不必单独书写代码实现它,只需要调用既可。
- 自定义函数:由程序员自主的创建的函数 当我们需要完成某个功能时,就可以去调用内置函数,或者自定义函数
- ()中的内容称之为参数,可以有参数,也可以没有参数,如果有多个参数,要用英文逗号隔开
- 返回值,函数返回的结果,有的函数有返回值,有的函数没有返回值
1.5 代码块
- 代码块就是代码的一种分组机制,同一个代码块中要么都执行,要么都不执行。
- 代码块以缩进开始,直到代码恢复到之前缩进级别时结束
if True:
print('haha')
print('678')
pass语句 代表的是空语句,没有任何意义,其作用主要是保持程序结构的完整性,一般用来作占位语句
a = 0
if a > 5:
pass
2、标识符
2.1 python语言的组成
1.关键字 2.标识符 3.注释 4.变量和数值 5.运算符 6.语句 7.函数 8.序列
2.2 关键字
关键字,就是python已经使用了的、一些具有特殊功能的标识符。不允许开发者自己定义和关键字具有相同名字的标识符
2.3 标识符的概念
-
开发人员在程序中自定义的一些符号和名称。标识符是自己定义的,如变量名、函数名等
-
组成:由26个英文字母大小写,数字 0-9 ,符号 _、$
-
标识符的规则:
- 1.标识符中可以包含字母、数字、_,但是不能使用数字开头
- 2.Python中不能使用关键字和保留字来作为标识符
-
命名方式
- 驼峰命名法:小驼峰命名(比如:myName)、大驼峰命名(LastName)
- 下划线命名法:用下划线“_”来连接所有的单词,比如:get_url
3、基本数据类型
数据类型指的就是变量的值的类型,也就是可以为变量赋哪些值
3.1 整数和小数
- 整数:所有整数, int类型,整型
- 小数:所有小数,float类型,浮点型
3.2 布尔值和空值
- 布尔值:只有两个值,一个是True,一个是False,用于逻辑判断,布尔值其实也相当于特殊的整型,True相当于1,False相当于0
while True:
print(1) # 该循环为死循环
while 1:
print(1) # 该循环为死循环,效果与上面循环一样
- 空值:只有一个数值,就是None,表示不存在
4、变量
4.1 变量的概念
-
变量是计算机内存中的一块区域,存储规定范围内的值,值可以改变,通俗的说变量就是给数据起个名字。
-
变量的命名规则:
- 变量名由字母、数字、下划线组成,要符合标识符的命名规范
- 数字不能开头
- 不能使用关键字
-
注意:两个对象相等和两个对象是同一个对象是两个概念
4.2 变量的计算
变量的运算就是正常的四则运算 ,需要注意的是在运算过程中含有浮点数,那么它返回的就是一个浮点数类型
5、字符串
5.1 字符串的概念
-
字符串是由数字、字母、下划线组成的一串字符,通常以串的整体作为操作对象
-
注意:
- 单引号(‘ ’)和双引号(“ ”)不能混合使用
- Python中一对双引号或者一对单引号包裹的内容就是字符串
- 三引号(‘’‘ ’‘’)通常用于长字符换行
5.2 转义字符
- 转义字符是一种特殊的字符常量。转义字符以反斜线""开头,后跟一个或几个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符
- 总结
\t 表示制表符
\n 表示换行符
\ 表示反斜杠
’ 表示’
" 表示”
dos = 'c:\\news'
print(dos) # 打印c盘news目录
dos = r'c:\news'
print(dos) # 打印c盘news目录,和上面程序效果一样
5.3 长字符串
- 长字符串, 又叫做文档字符串,我们使用三重引号来表示一个长字符串’’’ ‘’’
- 三重引号可以换行,并且会保留字符串中的格式
- 一般用长字符串来写注释
s = '关关雎鸠,\n在河之洲,\n窈窕淑女,\n君子好逑'
print(s)
s = '''关关雎鸠,
在河之洲,
窈窕淑女,
君子好逑
'''
print(s)
5.4 格式化字符串
- 第一种格式化方式:拼串
s = 'hello'
print('s = ' + s) # 输出结果为:s = hello
- 第二种格式化方式:参数传递
s = 'hello'
print('s = ',s) # 输出结果为:s = hello
- 第三种格式化方式:占位符
在创建字符串的时候,可以在字符串中指定占位符- %s 任意字符串占位
- %f 任意浮点数占位
- %d 任意整数占位
有几个占位符就得有几个对应的值
s = '%s, %s'%('hello','python')
print(s) # 输出结果为:hello,python
- 第四种格式化方式:f’ {变量} '
s1 = '蝙蝠侠'
s2 = '绿灯侠'
s = f'hello,{s1} and {s2}'
print(s) # 输出结果为:hello,蝙蝠侠 and 绿灯侠
age = 22
name = '罗斯'
s = f'李三{age} 岁,{name}年龄更大!'
print(s) # 输出结果为:李三22岁,罗斯年龄更大!
- 第五种格式化方式:str.format
s = '李三{} 岁,{}年龄更大!'
s1 = s.format(22,'罗斯')
print(s1) # 输出结果为:李三22岁,罗斯年龄更大!
s = 'I like {},{}'
s1 = s.format('美食','运动')
print(s1) # 输出结果为:I like 美食,运动
s = 'I like {0},{1}'
s1 = s.format('美食','运动')
print(s1) # 输出结果为:I like 美食,运动
s = 'I like {1},{0}'
s1 = s.format('美食','运动')
print(s1) # 输出结果为:I like 运动,美食
5.5 字符串其他操作
- len() 字符串的长度
print(len('Iloveyou')) # 输出结果为:8,表示字符串长度为8
- max() 最大值,min() 最小值
两者比较的是字符所对应的ascii值,可上网参考ascii码对照表,也可以用ord()函数获取字符ascii值
c = '1234567'
print(max(c)) # 输出结果为:7,表示最大值为7
print(min(c)) # 输出结果为:1,表示最小值为1
a = 'Jerry Python'
print(max(a)) # 输出结果为:y,y对应的ascii值为121
print(min(a)) # 输出结果为: ,空格对的ascii值为32
print(ord('y')) # 输出结果为:121
print(ord(' ')) # 输出结果为:32
- split() 分割字符串,返回值是一个列表
s = 'I love China'
b = s.split('')
print(b) # 输出结果为:['I','love','China']
- join() 拼接(连接)字符串
str.join()
str 要连接的方式
a = 'abc'
r = '-'.join(a) # 以-的方式来连接字符
print(r) # 输出结果为:a-b-c
- 去空格
- s.strip() 左右两边去空格
- s.lstrip() 去左边空格
- s.rstrip() 去右边空格
e = ' python '
print(e.strip())
print(e.lstrip())
print(e.rstrip()) # 在交互模式(python shell/python console)里看得更清楚
- 字符串大小写
- s.upper() 全部大写
- s.lower() 全部小写
- s.isupper() 判断是不是大写
- s.islower() 判断是不是小写
a = 'I love China'
print(a.upper())
print(a.lower())
print(a.isupper())
print(a.islower()) # 在交互模式(python shell/python console)里看得更清楚
6、练习
练习1
a = 6, b = 8, 如何将a、b值互换?用2种方式实现
a = 6
b = 8
c = a
a = b
b = c
print(a,b)
a,b = 6,8
a,b = b,a
print(a,b)
练习2
print()语句练习,⽤两种⽅式打印 hello, python
print('hello, python')
s1 = 'hello'
s2 = 'python'
print(s1+', '+s2)
练习3
1314,老婆,我爱你!
print('1314,' + '老婆,' + '我爱你!')
s1 = '1314,'
s2 = '老婆,'
s3 = '我爱你!'
print(s1 + s2 + s3)
s = '%s,%s,%s'%('1314','老婆','我爱你!')
print(s)
s1 = '1314'
s2 = '老婆,'
s3 = '我爱你!'
s = f'{s1},{s2},{s3}'
print(s)