2018-08-21快捷键及python基础语法(day2)
一、快捷键
ctrl+/ 注释/取消注释
ctrl+s 保存
ctrl+c 复制、拷贝
ctrl+v 粘贴
ctrl+x 剪切
ctrl+b 编译(暂不用)
ctrl+r 编译执行
ctrl+a 全选
ctrl+z 撤销
ctrl+shift+z 反撤销
ctrl+f 查找
ctrl+n 新建
ctrl+shift+n 新建(工程)
注:写代码时一定要在英文输入状态下!!
二、Python基本语法
1..注释
①注释是不会参与代码的编译和执行的,只是对代码进行解释和说明的文字,方便以后做项目让别人理解代码要表达的含义。
②单行注释在注释文字前加#号即可
③多行注释在注释文字前后加""" """或''' '''
代码如下
#注释文字
"""
多行注释
多行注释
"""
'''
多行注释
多行注释
'''
2.标识符(专门用命名用)
①是由字母数字下划线组成(只能多不能少)
②数字不能开头的
③大小写敏感的(大小写不一样的,例如:abc和AbcABC不一样)
④python3以后,标识中可以包含非ASCII码(可以包含中文)但是实际开发中不建议使用
代码如下
number1 = 11
abc = 12
Abc = 13
class_name = 1806
#不建议使用
蟒蛇 = 'Python'
3.关键字(保留字)
Python中保留用来作为特殊语法和拥有特殊功能的文字
代码如下
import 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', 'lambda', 'nonlocal', 'not', 'or', 'pass',
'raise', 'return', 'try', 'while', 'with', 'yield']
4.行与缩进
缩进要求
①同一级代码必须保持同一缩进
②通过缩进来产生代码块(类似其他语言的{})
行的要求
①声明函数的前后必须要有两个换行
②声明类的前后也需要两个换行
③多个功能模块间用换行隔开
代码如下
a = 10
if a > 10:
print("Yes")
else:
print("no")
5.多行显示(一句话多行显示)
①在需要换行的地方加\,然后在后面换行,换行后缩进不受限制
②列表、字典、元祖和集合的字面量换行不用加\
6.字面量 (再具体的值)
①数字字面量: 10, 12.5, -20, 2e2, 19j
②布尔值: True()
③字符串: '76sh&*&',"hello", "123"
④列表: [10,20,'python','hello',Ture]
⑤字典: {'a':10, 'name':'玉婷'}
7.python中的基本数据类型
①数字相关的
int(整型), float(浮点型), complex(复数)
②布尔(bool)
只有True和False两个值
③str(字符串)
④list(列表)
⑤dict(字典)
⑥tuple(元祖)
⑦set(集合)
⑧function(函数)
⑨bytes(字节)
三、变量
声明变量就是在内存中开辟空间存储数据。(变量就是用来存储数据的)
1.怎么声明变量
格式:变量名 = 值
2.类型
python声明变量的时候不需要确定类型
3.变量名
①标识符,不能是关键字;见名知义,PEP8命名规范(所有的字母都小写,多个单词之间用_隔开)
②=:赋值符号,将右边的值赋给左边的变量
③值:表达式(就是有结果的,例如:字面量,运算表达式(10+20),其他的变量)
④驼峰式:jian_Shu
4.python中每条语句结束可以不用分号。但是如果一行要写多条语句,就必须加分号
5.id函数
①id(变量) --- 查看变量的地址
② python声明变量,和给变量赋值的原理: 先在内存中开辟空间存数据,然后再将变量名作为数据对应的内存的标签。
代码如下
a = 10
print(id(a))
四、数字与布尔
1.int(整型)
注:所有的整数都是整型,python3中的整型只有int,python2中有int和long
内置函数:type() 获取括号中数据的类型
代码如下
num1 = 110
num2 = -110
print(type(num1),type(num2))
2.float(浮点数)
注:所有带小数点的数,都是浮点型。python中的浮点型只有float
代码如下
num1 = 1.2321
num2 = 123.0
num3 = 1e2
num4 = - 0.321
print(type(num3),type(num4))
3.bool(布尔)
①布尔就True和False
True = 1; False = 0
代码如下
num1 = True
num2 = False
print(type(num1),type(num2))
五、运算符
1.数学运算符
①+(加), -(减), *(乘), /(除), //(整除), %(取余), **(幂运算)
②+,-,,/,%和数学中的加、减、乘、除、求余的功能一模一样
代码如下
print(1+2)
print(3-2)
print(1*2)
print(3/2)
#//整除(求商,商只取整数部分)
print(3//2)
#**(幂运算)
print((2**2),(2**3))
2.比较运算
① >(大于), <(小于), ==(等于), !=(不等于), >=(大于等于), <=(小于等于)
②所有的比较运算的结果都是布尔值
代码如下
print(1 > 0)
print(1 < 2)
print(1 == 1)
print(1 != 2)
print(1 >= 0)
print(1 <= 2)
3.逻辑运算符 : and(与),or(或), not(非)
注:逻辑运算符操作的数据是布尔值,返回的结果也是布尔
①and(与)(和)(并且)
两个都是True结果才是True,只要有一个是False结果就是False
代码如下
print(True and True) # True
print(True and False) # False
print(False and False) # False
#示列
num1 = 30
num2 = 25
print(num1>27 and num2<27)
# 什么时候使用:要求两个或者多个条件同时满足
②or(或;或者)
只要有一个是True结果就是True。两个都是False结果才是False
代码如下
#示列
num1 = 30
num2 = 25
print(num1>27 or num2>=27)
# 什么时候使用:要求两个或者多个条件只要一个条件满足就行
③ not(非)
Ture变成False, False就变成True
代码如下
#示列
num1 = 30
print(not num<27)
4.赋值运算符:=(赋值),+=, -=, *=, /=, %=, //=, **=
注:赋值符号的左边必须是变量;运算顺序是,先算赋值符号右边的值,然后再将右边的结果赋给左边。
代码如下
num1 = 30
num1 += 2 #32
num1 -= 3 #27
num1 *=2 #60
num1 /=2 #15
num1 %=4 #2
num1 //=4 #7
num1 **=2 #900
5.运算符的优先级
①正负 > 数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
②数学运算符中: ** > (*,/,%,//) > (+,-)
③优先级高的先计算,如果优先级相同就从左往右依次计算。可以通过加括号,改变运算顺序
代码如下
print(10 * 15 + 15 > 150 / 2 - 100) # True
六、进制:计算机中常用的进制有:二进制、八进制、十进制、十六进制
1.十进制
①基数:0,1,2,3,4,5,6,7,8,9 例如:112123,,345945
②进位:逢10进1
③十进制数上的每一位:123 = 100+20+3 = 102*1+1012+10^03
2.二进制:
①基数:0,1 例如:110,10101,10001
②进位:逢2进1
③二进制数上的每一位:1011 = 2^01 + 2^11 + 2^20 + 2^31 =
11(十进制)
④数学规定:所有的数的0次方都是1
3.八进制:
①基数:0,1,2,3,4,5,6,7
②进位:逢8进1
③八进制数上的每一位:123 = 8^03 + 8^12 + 8^2*1 = 83(十进制)
4.十六进制:
①基数:0-9,a-f(A-F) -- a(10)~f(15) 例如:1af
②进位: 逢16进1
③十六进制数上的每一位:123 = 16^03 + 16^12 + 16^2*1 = 291(十进制)
4.进制间的转换
①二进制、八进制、十六进制 ---> 十进制
进制数^位数(从0开始)每一位上的值的和
23(16) = 16^013 + 16^12 + 16^21 = 291(10)
123(8) = 8^03 + 8^12 + 8^21 = 83(10) 1011(2) = 2^01 + 2^11 + 2^20 + 2^3*1 = 11(10)
②八进制、十六进制 ---> 二进制
将一位的八进制转换成3位的二进制。将一位的十六进制转换成4位的二进制
123(8) -> 001010011(2)
10(8) -> 001000(2)
123(16) -> 000100100011(2)
10(16) -> 00010000(2)
③二进制 ---> 八进制、十六进制
将3位的二进制转换成1位的8进制。将4位的2进制转换成1位的16进制
001 010 011(2) -> 123(8)
0001 0010 0011 -> 123(16)
④十进制 -> 二进制
相除取余法
注:python支持整数的二进制、八进制、十六进制。
5.python中二进制、八进制、十六进制数的表示
① 二进制:0b
代码如下
print(0b11 + 10)
print(11+10)
# 将其他的数据转换成二进制 bin()
print(bin(20))
print(bin(0x20))
② 八进制:0o
代码如下
print(0o11)
# 将其他的数据转换成八进制 oct()
print(oct(20))
print(oct(0b11011))
③十六进制:0x
代码如下
print(0xaf)
# 将其他的数据转换成十六进制 hex()
print(hex(20))