一.储备知识
1.print()是python中的打印函数,功能就是在控制台将括号中的内容输出
2.快捷键ctrl+/添加注释,ctrl+//消除已经注释的代码
ctrl+s 保存
ctrl+z 撤销
ctrl+b 编译(在sublime里是编译执行)
ctrl+r 编译执行
ctrl+shift+z 反撤销
ctrl+f 查找
ctrl+a 全选
ctrl+n 新建文件
ctrl+shift+n 新建工程
二.python基础
(一).注释
注释是不会参与代码的编译与执行的,只是对代码进行解释和说明的文字
单行注释:就是在注释文字前加#
多行注释:1.三个双引号或者单引号括起来的文字
"""
注释
"""
2.三个'''括起来的文字
'''
注释
'''
(二).标识符
专门用来命名的
要求:
a.是由字母数字下划线组成,只能少不能多
b.数字是不能开头的
c.大小写敏感
d.python3以后,标识符中可以包含非ASCII码(可以包含中文),但是在实际开发中不建议使用中文
A,B,C A-大版本 重大修改
(三).python中的关键字(保留字)
python中保留用来作为特殊语法和拥有特殊功能的一些单词
通过
import keyword
#打印出了所有关键字
print(keyword.kwlist)
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
(四).行与缩进
缩进的要求:
a.同一级的代码必须保持统一缩进
b.python通过缩进来产生代码块(类似于其他语言中的大括号{})
行的规范:
a.声明函数的前后必须要有两个换行
b.声明类的前后也需要两个换行
c.多个功能模块间用换行隔开
一句代码多行显示:
在想要换行的地方加一个\,并且换行之后缩进不受限制
a = 100+200\
+3400
注意:列表,字典,元组和集合的字面量换行不加\,直接换行
[
123,
24
]
(五).字面量(具体的值)
注意:2e2 == 200 == 2x10^2
注意:复数的字面量(python中的复数只有j)
10+2j
a.数字字面量:10,12.5,-20,+10.0
b.布尔值:True,False
c.字符串:'sscs',"dsdssd"
d.列表:[10,20,'h','w',True]
e.字典:{'a':10,'name':"张三"}
(六).python中的基本数据类型
a.数字相关的
int(整型),float(浮点型)
complex(复数)
b.布尔(bool)
只有True和False两个值
c.字符串(str)
d.列表(list)
e.字典(dict)
f.元组(tuple)
g.集合(set)
h.函数(function)
i.字节(bytes)
(七).变量
声明变量就是在内存中开辟空间存储数据。(变量就是标签)
python是动态语言
1.怎么声明变量
变量名 = 值
说明:
a.python声明变量的时候不需要确定类型
b.变量名是标识符,不能是关键字
c.=:赋值符号,将值贴上变量的标签
值:表达式,就是有结果的,例如:字面量,运算表达式,其他的变量
要求:
a.见名置义
b.遵循PEP8命名规范(所有字母都小写,多个单词之间用_连接)
2.python中每条语句结束之后不用分号,但是如果一行要写多天语句,就必须加分号
number1 = 10;number2 = 20
也可以
num1,num2=1,2
3.同时声明多个变量,并且赋一样的值
str1 = str2 = 'abc'
使用print同时打印多个值
print(str1,str2,str3)
4.id函数
id(变量)---查看变量的地址
python声明变量和给变量赋值的原理:先在内存中开辟空间存数据,然后再将变量名作为数据对应的内存的标签
注意:常量池地址是一样的
5.int(整型)
#所有的整数都是整型,python3中的整型只有int,python2中有int和long
内置函数type()----获取括号中数据的类型
注意: 科学计数法数是浮点数
print(type(2e2))
<class 'float'>
6.布尔
布尔就True和False
True对应的值是1
False对应的值是0
(八).运算符
1.数学运算符
+ 加
- 减
* 乘
/ 除
// 整除 整除之后没有小数点,只取商的整数部分,就是c语言里的除,
% 取余 a**b即求a的b次方
** 幂运算
注意:+,-,*,/和数学中的加、减、乘、除、求余的功能一模一样
例子:9**(0.5)
练习:取出一个四位数中的百位数是几
方法一:
```
num=number%1000
num=num//100
```
方法二:
```
num=number//100
num=num%10
```
2.比较运算符
> 大于
< 小于
>= 小于等于
<= 小于等于
== 等于
!= 不等于
注意:所有的比较运算的结果都是布尔值
3.逻辑运算符:操作的数据是布尔值,返回的结果也是布尔
and 与 两个都为True结果为True,只要一个是False,结果就是False
or 或 至少一个为True结果为True,全部为False,结果为False
not 非 取反,True则为False
4.赋值运算符:
= 赋值
+= 加等于
-= 减等于
*= 乘等于
/= 除等于
%= 取余等于
//= 整除等于
**= 幂等于
要求:赋值符号的左边必须是变量;运算顺序是先算赋值符号右边的值,然后再将右边的结果赋给左边
变量 += 值
注意:这儿的变量必须是已经声明过的变量,变量必须先声明,再使用
a +=2 #相当于a = a+2
b+=2是在原址进行值修改
b=b+2是进行运算后再把新地址贴上b标签
5.运算符的优先级
数学运算符>比较运算符>逻辑运算符>赋值运算符
数学运算符中:** >(*,/,%,//) >(+,-) 注意:正负大于数学运算符
优先级高的先计算,如果优先级相同就从左往右依次计算,可以通过加括号改变运算顺序
(九).进制
1.计算机中常用的进制:二进制,八进制,十进制、十六进制
十进制:
1.基数:0,1,2,3,4,5,6,7,8,9
2.进位:逢10进1
二进制
1.基数:0,1
2.进位:逢2进1
二进制转十进制
1010=1*2^3+0*2^2+1*2^1+0*2^0=10
八进制:
1.基数:0,1,2,3,4,5,6,7
2.进位:逢8进1
十六进制
1.基数:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
2.进位:逢16进1
2.进制间的转换
1.二进制,八进制,十六进制-->十进制
进制数^位数(从0开始)*每一位上的值的和
2.八进制、十六进制-->二进制
将一位的八进制转换成三位的二进制
将一位的十六进制转换成四位的二进制
二进制转换成八进制或者十六进制与以上操作相反
3.十进制-->成二进制
相除取余法:除到商为0为
3.python对进制的支持
python支持二进制,八进制,十六进制
python中二进制,八进制,十六进制的表示:
二进制:a = 0b11
通过添加前缀0b表示二进制,后面的数只能是0或1的组合
八进制:a = 0o77
通过添加前缀0o表示八进制,后面的数只能是0到7的组合
十六进制:a = 0xaf
通过添加前缀0x表示十六进制,后面的数只能是0-9和a-f的组合
内置函数:
bin():将其他的进制转换为二进制
oct():将其他的进制转换成八进制
int():将其他的进制转换成十进制,也可以将其他数据类型转换成整型
hex():将其他的进制转换为十六进制
#day2作业
1.下列四组数,依次为二进制、八进制和十六进制,符合要求的是(d)
a. 12, 77, 10
b. 12, 80, 10
c. 11, 78, 19
d. 11, 77, 19
2.二进制数加法运算的基本特点是“逢二进一”,即0+0=0,0+1=1,1+0=1,1+1=0并进位。运用这一基本法则和十进制运算的类似规律,得出二进制数加法运算1001+101的结果为(c)
a. 1001
b. 1010
c. 1110
d. 1101
3.八进制754中的数码7对应的位权是(c)
a. 10^2 b. 16^1 c. 8^2 d. 2^2
5.十进制数53转换成二进制数是(b)
a. 100101
b. 110101
c.100100
d.110100
6.(偏难)已知,十进制中的8在X进制中表示为11,即(10)8=(X)11。请问这个X进制具体为(b)进制
a. 6
b. 7
c. 8
d. 9
7.(偏难)二进制的1000001相当十进制的④,二进制的100.001可以表示为_④ __。
A: ① 62 ② 63 ③ 64 ④ 65
B: ① 23+2–3 ② 22+2–2 ③ 23+2–2 ④ 22+2–3
8. 下面定义变量正确的是(a,d)
a. a = b = c = 10
b. a,c = 10
c. in = 20
d. num = 10; t = 20
9. n = 6784,以下能够获取到7 的方法有(c,d)
a. n / 1000 % 100
b. n % 1000 / 100
c. n // 100 % 10
d. n // 10 % 100 // 10