2018-08-21 Day2-python语法基础
Python就业领域
- 服务器端应用开发 - 网站服务器/游戏服务器
Django / Flask / Tornado - 云服务基础平台
Go / Java / Python - OpenStack - 爬虫开发(网络数据采集)
- 量化交易(数字货币)
- 自动化测试(Shell/Java --> Python)
- 自动化运维
- 数据分析+机器学习(深度学习)
python解释性、编译性、互动性和面向对象的脚本语言。
python语言具有很强的可读性
特点:1.易于学习 2.易于阅读 3.易于维护 4.一个广泛的标准库 5.互动模式 6.可移植性 7.可扩展性 8.数据库 9.GUI编程 10.可嵌入
1.快捷键:
ctrl+/ 添加/取消注释
ctrl+s 保存
ctrl+c 复制
ctrl+x 剪切
ctrl+v 粘贴
ctrl+b 编译
ctrl+a 全选
ctrl+z 撤销
ctrl+shift+z 反撤销
ctrl+f 弹出搜索框
ctrl+n 新建
ctrl+shift+n 新建(工程)
按住shift点鼠标,可以选中部分内容
2.注意:
写代码的时候,一定是在英文输入的状态
3.注释
注释是不会参与代码的编译和执行的,只是对代码进行解释和说明
单行注释:注释文字前加#
多行注释:3个单引号(双引号)前后包起来
4.标识符:(专门用来命名的-变量、函数、类)
要求
a.是由字母数字下划线(只能少不能多)
b.数字表示开头的
c.大小写敏感
d.python3以后,标识符中可以包含非ASCII码(可以包含中文-不建议使用)
5.关键字(保留字)
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']
[Finished in 0.3s]
6.行与缩进
缩进的要求:
1.同一级的代码必须保持统一缩进(统一使用tab键来产生缩进)
2.通过缩进来产生代码块(类似其他语言中的{})
行的规范:
1.声明函数的前后必须有两个换行
2.声明类的前后也需要两个换行
3.都个功能模块间用换行隔开
7.多行显示(一句代码多行显示)
一行代码显示不完,不方便阅读时使用,不影响代码效果!
1.语法:行末加反斜杠“\”即可
1000 + 2434543 - \
43643435 / 1000
2.列表、字典、元组和集合的字面量换行不用加“\”
[120,23,
'abc',
545,hehe]
8.字面量(具体的值)
1.数字字面量:
10,12.5,-20,+10.0,2e2
2.布尔值:
True(真),False(假)
3.字符串:'proxy123' , "hello"
4.列表:
[10,20,'python']
5.字典:
{'a':10 , 'name':'xingchen'}
9.python中的基本数据类型
1.数字相关的:
int(整型), float(浮点型),complex(复数)
2.布尔 - bool
只有True ,False两个值
**3.字符串 - str **
a="abc"
4.列表 - list
a=['a','b',10]
5.字典 - dict
a={a:10 , b:20}
6.元组 - tuple
a= (10 , 20 ,'abc')
**7.集合 - set **
a = set(10,20,'abc')
8.函数 - function
9.字节 - bytes
10.变量
声明变量及时在内存中开辟空间存储数据--变量就是存储数据
python是动态语言(不用声明数据类型)
1.怎么声明变量
格式:变量名 = 值
name = '路飞'
说明:
1.类型:不用确定
2.变量名:标志符,不能是关键字
--见名知义,PEP8命名规范(所有字母都小写,多个单词之间用“_”隔开)
class_name = "python1806"
- =: 赋值符号,将右边的值赋给左边的变量
4.值:表达式(就是有结果的,例如字面量,运算表达式(10+20),其他的变量)
如果申明一个变量,可以重新存储不同的数据类型
number = 100
number = '瑞文'
print (number)
效果如下:
瑞文
2018-8-21下午汇总
python中每条语句结束可以不用分号,但是如果一行需要写多条语句就必须加“ ; ”隔开。
number = 10 ; name = 'aaa'
同时声明多个变量,并且赋一样的值
str1 = str2 = str3 = 'abc'
使用print同时打印多个值
print(str1 , str2 , str3)
一些内置函数
1.id函数
id()----查看变量的地址
先在内存中开辟空间存储数据,然后再将变量名作为数据对应内存的标签
例如:
a = 100
a = 10000
先把100存起来,再将其给予a的标签,所以a的地址发生变化
a = 100
print(id(a))
a = 10000
print(id(a))
打印地址如下:
1687149152
34333232
同理:
a = 100
print(id(a))
b = 100
print(id(b))
地址相同,如下:
1687149152
1687149152
所有的整数都是整型,python3中整型只有int,python2中整型有int和long
2.type函数
type() --- 获取括号中的数据类型
3.float----浮点型
所有带小数点的数字,都是浮点型
num1 = 0.12
num2 = -3.14
num3 = 2e2
print(type(num1),type(num3))
<class 'float'> <class 'float'>
[Finished in 0.3s]
4.布尔
布尔就是True和False
True = 1 ; False = 0
运算符
1.数学运算符:
+ (加)、- (减)、*(乘) 、/ (除)
//(整除) 、%(取余) 、**(幂运算)
//(整除) :
print(5//2)
2
%(取余):
print(5%2)
1
**(幂运算):
print(2**3)
8
--练习--:
# 取出一个4位整数的百位上的数是多少
a = 1343
num = a % 1e3
num = num // 1e2
print(num)
3.0
2.比较运算符
(大于) ; <(小于) ; ==(等于) ;!=(不等于)
所有比较运算的结果都是布尔值
print(20 > 10)
print(True == 1)
print(False != 10)
True
True
True
[Finished in 0.2s]
3.逻辑运算符
and (与):两个 或者多个条件同时满足
or(或): 只要一个为True,结果就为False
not(非):返回结果与条件相反
操作的数据是布尔值,返回的结果也是布尔值
示例:
print(True and False)
# 成绩为A
score = 4 ; score2 = 91
print(score>3.5 or score2>=90)
# 年龄不小于18
age = 20
print(not age < 18)
False
True
True
[Finished in 0.2s]
4.赋值运算符
赋值符号:
=(赋值),+=, -+ , *=,
/= , //= , *= , **=
赋值符号的左边必须是变量。
运算顺序:先运算赋值符号右边的值,然后将结果赋值给左边的变量。
a.变量 = 值
a = 10
b.变量 += 值
这儿的变量必须是已经声明过的变量
a += 2 #相当于 a = a + 2
注意:a += 2 地址不会变化
a = a+2 地址会变化
5.运算符的优先级
正负>数学运算符>比较运算符>逻辑运算符>赋值运算符
--优先级高的先计算,如果优先级相同,就从左往右依次计算,括号优先运算。
6.进制
- 计算机中常用的进制有:二进制、八进制、十进制、十六进制
- 十进制:
a. 基数:0-9
b. 进制:逢10进1
c. 十进制上的每一位:123 = 10^2 * 2 + 10^ 1 * 2 + 10^0 * 3 - 二进制:
a. 基数:0-1
b. 进制:逢2进1
c. 二进制上的每一位:110 = 2^2 * 1 + 2^ 1 * 1 + 2^0 * 0
3.八进制和十六进制类似
- 八进制基数是0-7
- 十六进制的基数0-9,a,b,c,d,e,f
7.进制间的转换
- 二进制、八进制、十六进制 ----> 十进制
- 进制数^位数*每一位上的值得和
- 八进制、十六进制 ----> 二进制
- 将一位的八进制转换成3位的二进制,将一位的十六进制转换成4位的二进制,反之类似!
例如:123(8)=001 010 011(2)
a2(16)= 1011 0010(2)
- 将一位的八进制转换成3位的二进制,将一位的十六进制转换成4位的二进制,反之类似!
- 十进制 ---> 二进制
- 辗转相除法
8.Python对进制的支持
- python支持整数的二进制、八进制、十六进制
- 二进制:0b
0b11=3(10) - 八进制:0o
- 十六进制:0x
python中内置进制转化方法
转换成二进制:bin()
转换成八进制:oct()
转换成十六进制:hex()