python基础知识认识

一、常用的快捷键 (不是只在python中有效)

ctrl+/ 添加注释/取消注释

ctrl+s 保存

ctrl+b 编译

ctrl+r 执行(编译+执行)

ctrl+c 复制/拷贝

ctrl+v 粘贴

ctrl+x 剪切

ctrl+z 撤销

ctrl+shinf+z 反撤销

ctrl+y 反撤销

ctrl+f 查找

ctrl+a 全选

ctrl+n 新建

shift 可以选中部分(和鼠标配合,选中开始和结束中间的部分)。

ctrl 可以让多个位置出现光标(和鼠标配合)。

二、python的基本语法

1.注释(写在代码中不参与编译执行的部分就是注释,作用用来对代码进行注释说明,方便程序更好的阅读代码)

注意:要勤写注释,方便自己也方便别人!

a.单行注释:在文本内容的前面加#号。

b.多行注释:

每一行前都加一个#号

将注释放在三个单引号/三个双引号中(推荐使用双引号) 例子如下:

“””

我是注释1

我是注释2

“””

‘’’

我是注释1

我是注释2

‘’’

2.标识符:标识符是用来命名的(比如变量名、函数名、类名)

要求:a.有字母 数字 下划线组成,并且数字不能开头 —python2.x规范

b.在Unicode编码中,出来ASCTII码表中的字母 数字 下划线以外不能作为标识符的一部分,其他的都可以。数字不能开头(有字母数字下划线和中文组成,数字不能开头) —python3.x规范

注意:在实际开发中,现在还是推荐使用python2.x的规范。

3.语句。

c/java语法,每条语句结束必须加分号。

python中一条语句可以加分号也可以不加;如果一行要显示多条语句,那么每条语句之间必须加分号。

4.行和缩进。

python中对缩进有严格规范,要求同样等级的代码对应的缩进必须一致;只有在需要产生代码块的时候才需要加缩进。

行:要求函数的声明和类的声明的前后需要有两个空行(不要报错)。

5.多行显示问题。

a.在需要换行的位置加个\,然后再换行(\不要破环数据本身)。

b.如果是数组 字典 元祖和集合的值可以直接换行。

6.常见的数据类型及其字面量。

整型(int) 浮点型(float) 字符串(str) 布尔(bool) 列表(list) 字典(dict)。

整型:相当于数学中的整数,列如:100,-12,+30。

浮点型:带小数点的数,列如:12.5 ,3.14,0.23。

布尔型:只有两个值分别是True(真)和False(假)。

字符串:用单引号或者双引号括起来的数据,列如:’100’,’abc’,”abc100”。

7.关键字(保留字)

在python中有特殊功能和特殊意义的一些标识符(单词)。

import keyword 导入keyword模块

print(keyword.kwlist) 打印所有

[‘false’,’none’,’true’,’and’,’as’,’assert’,’break’,’class’,’continue’,’def’,’del’,’elif’,’else’,’except’,’finally’,’for’,’from’,’global’,’if’,’import’,’in’,’is’,’lambad’,’ninlocal’,’not’,’or’,’pass’,’raise’,’return’,’try’,’while’,’with’,’yield’]

# 注意:在上面[]中的内容才是关键字,其他的不是。

三、数字类型

不同的类型所占的存储空间不同。

1.python中的数字类型有四个:整型(int)、浮点型(float)、布尔(bool)、 复数(complex)。

a.整型(int):包含python所有的整数,python3.x整型只有int类型一种,但是python2.x出来int还有long。如:100,-100,+54。

b.浮点型(float):包含python所有的小数.如:12.89,-123.98,+237.89。

注意:浮点型支持科学计数法.如下:

print(12e2) 注:12e2=12*10^2

print(12e-3) 注:12e-3=12*10^(-3)

c.布尔(bool):布尔类型的值只有两个,分别是True(真)和False(假)。

注意:布尔值的首字母是大写的。

True对应的数值是1,False对应的数值是0。

d.复数(complex)

复数:有实部和虚部组成的数字。如:10+10j

2.type(数值/变量);获取括号中值的类型。

print(type(10j)) 获取类型为complex(复数)

print(type(100)) 获取类型为int(整型)

print(type(True)) 获取类型为bool(布尔型)

print(type(2e2)) 获取类型为float(浮点型)

3.类型名():将其他的类型的数据转换成当前类型。

print(int(12.6)) 获取的答案为:12

print(bool(10)) 获取的答案为:True

print(float(100)) 获取的答案为:100.0

print(complex(20)) 获取的答案为:20+0j

注意:复数不能转换为整型和浮点型数据类型。

四、变量

1.什么是变量

声明变量,就是在内存中开辟空间存储数据。变量就是程序在内存中存储数据的容器。

2.怎么声明变量?

C/Java声明变量:类型 变量名=初值;

python声明变量:变量鸣=初值

变量名=初值

说明:a.变量名:程序员自己命名,要求是标识符,并且不能是关键字;所有的字母必须小写,如果变量名是多个单词组成,多个单词之间用下划线隔开;见名知义(看见变量名,要知道这个变量大概存的什么样的数据)。

b.=:赋值符号,功能是将=右边的值赋给左边的变量。

c.初值:有值的表达式(具体的字面量,其他已经声明过的变量)。

声明一个变量并且赋值为100。如下:

number=100

print(number) 输出的值为100

True=12.5 错误为:SyntaxError: can’t assign to keyword

1abc=True 错误为:SyntaxError: invalid syntax

声明一个变量student_name,赋值为’小明’。

注意:虽然int、float、bool、str、等不是关键字,但是在需要命名的时候最好用他们来命名。

student_name=’小明’

print(student_name)

3.声明完一个变量可以给变量重新赋值。

重新赋值后,新的值会覆盖变量中原来的值。

student_name=’小花’

print(student_name)

python中,同一个变量可以存储不同类型的值。

student_name=100

print(student_name)

4.同时声明多个变量。

变量名1=变量名2=变量名3-初值

如:a=b=c=123

print(a,b,c) print同时打印多个数据,多个数据自己用逗号隔开。

将变量student_name中的值,赋给new_name。

new_name=student_name

注意:变量只有在赋完值后才能使用(只能声明后才能使用)。

print(new_name2) 错误为:NameError: name ‘new_name2’ is not defined

五、运算符

python中运算符:数学运算符、比较运算符、逻辑运算符、赋值运算符、位运算。

1.数学运算符:+,-,*,/,%(取余),//,**。

a.+;求和,和数学中的加号一样。

b.-:求差,和数学中的减号一样。

c.*:求乘积,和数学中的乘号一样。

d./:求商,和数学中的除号一样。

注意:和c语言中的/不一样。

e.%:求余数。

注意:python中小数和整数可以求余数。

print(5%2) 输出的结果为:1

print(5.5%2) 输出的结果为:1.5

f.//:求商,结果只取商的整数部分。

print(5//2) 输出的结果为:2

# g.**(幂运算):求幂。

x**y:求x的y次方。

技巧:可以通过把y的值设置为1/2(0.5)来求一个数的开平方。例子如下:

print(2**3) 输出的结果为:8

print(100**0.5) 输出的结果为:10.0

2.比较运算符:>,<,==,!=,>=,<=。

比较运算的结果是布尔值:True/False。

==:判断左右两边的值是否相等,=:将右边的值赋给左边的变量。

3.逻辑运算符:and(与),or(或),not(非)。

逻辑运算符的结果也是布尔值,运输对象也必须是布尔值。

a.and:值1 and 值2 :两个都是True,结果才是True,否则都是False。

print(True and True) 输出的结果为:True

print(True and False) 输出的结果为:False

print(False and True) 输出的结果为:False

print(False and False) 输出的结果为:False

练习:设置获得奖学金的条件:绩点在3.5以上,并且操评分高于90。

grade=3.8

score=95

条件1:

grade>3.5

# 条件2

score>90

print(grade>3.5 and score>90) 输出的结果为:True

注意: 什么时候使用and:要求多个条件同时满足的时候使用and连接。

b.值1 or 值2:两个都是False的时候才是是False,否则为True。

print(False or False) 输出的结果为:False

print(False or True) 输出的结果为:Ture

print(True or True) 输出的结果为:True

练习:是否穿毛衣出门:温度低于20度,或者风速高于五级。

temperature=22

wind_speed=6

# 条件1

condition1=temperature<20

# 条件2

condition2=wind_speed>5

print(condition1 or condition2) 输出的结果为:True

注意:什么时候使用or:要求多个条件中有一个条件满足。

3.not值:值取反(True->False;False->True)。

print(not True) 输出的结果为:False

print(not False) 输出的结果为:True

age=18

# 条件:年龄不大于18

print(age<=18)或者print(not age>18)

注意:否定某个条件时用not。

4.python中and和or会有短路现象。

and的短路现象:值1 and 值2 –>一旦确定值1的值是False,就不会再去执行判断值2。

or的短路现象:值1 and 值2 –>一旦确定值1的值是Ture,就不会再去执行判断值2。

5.赋值运算符:=,+=,—=,*=,%=,//=,**=。

赋值运算符的左边必须是变量,赋值的时候是先算赋值符号右边的结果,然后再将结果赋给左边的变量。

a.=:单纯的将=右边的值赋给左边。

b.+=,—=,*=,%=,//=,**=

要求左边的变量本身必须有值。

num=100

num+=10

print(num) 相当于:num=num+10

num1=4

num1*=2

print(num1) 相当于:num1=num1+2

6.运算符的优先级:

a.数学运算符>比较运算符>逻辑运算符>赋值运算。

b.先计算优先级高的,如果优先级相等就从左往右依次运算。

c.如果有括号,先算括号里面。

d.数学运算符:*>,*,/,%,//>+,-。

六、今日作业

1.写代码获取数字1234中的十位上和百位上的数字?

x=1234

求十位上的数字:

print(x//10%10)

求百位上的数字

print(x//100%10)

2.如果变量n的值是6784, 以下表达式的结果是多少?

n / 1000 % 100 结果为:6.784

n % 1000 / 100 结果为:7.84

n // 100 % 10 结果为:7

n // 10 % 100 // 10 结果为:7

3.表达式 10 / 4 + 23 // 4 * 2 - 30 的结果是多少?

print(10 / 4 + 23 // 4 * 2 - 30) 结果为:17.5

4.写出下面每一行中n3的结果:

n1 = 4; n2 = 5

n3 = n1 >n2 结果为:False

n3 = n1<n2 结果为:True

n3 = n1==4 结果为:True

n3 = n1!=4 结果为:False

n3 = n1 == 1+3 结果为:True

5.写出以下代码执行完成后,num的结果

num = 10

num /= 2

num += 10 10 / 4 + 23**2 结果为:48

6.下面定义变量正确的是(a)

a. a = b = c = 10

b. a, c = 10

c. in = 20

d. num = 10; t = 20