python基础知识——基本语法
在python基础知识这个系列中,准备罗列出我学习python的一些基础知识,包括:
- 基本语法
- 控制语句
- 内置数据结构
- 模块和函数
- 字符串
- 文件处理
- 面向对象
- 异常处理
以前写机器学习算法喜欢使用Matlab语言,接触python后,觉得python有很多地方还是比Matlab方便点,各有各的优势吧,在公司还是使用python较多,这里会罗列出一些python的基础知识。
一、编码规则
1、命名规则
变量名通常是由字母和下划线组成,包名,模块名通常是由小写字母组成。
类名的首字母用大写,其他字母用小写;对象名用小写字母;类的私有变量、私有方法以两个下划线作为前缀。
class Person:#定义一个Person类
__name = ''#定义一个私有变量
__age = ''#定义一个私有变量
def __init__ (self, name, age):
self.__name = name
self.__age = age
def getName (self):
return self.__name
def getAge (self):
return self.__age
函数名通常采用小写字母。
2、代码缩进和冒号
在python中,代码缩进和冒号都是一种语法,在Java,C/C++中有{}语法,在python中则是采用的缩进和冒号。
如在Java中实现如下的判断:
if (x < 10)
{
y = x + 1;
}else{
y = x * 2;
}
则在python中的写法为:
if x < 10:#冒号
y = x + 1#缩进
else:
y = y * 2
3、模块的导入
模块是指类或者函数的集合。与Java中的import类似,在python中有两种导入方式:
- import ...
- from ... import ...
如要需要使用random模块中的rangrange函数。则有以下两种方式:
from ...
import random
num = random.randrange(1,9)#使用randrange函数
print num
from ... import ...
from random import randrange
num = randrange(1,9)#使用randrange函数
print num
注:这两种方式的区别,from ...导入的是整个模块,而import ...import ...导入的只是部分内容,而且还创建了导入对象的引用,可以直接使用。在import ...模式中为模块创建别名,则使用as,如
import random as rd#为random创建别名rd
num = rd.randrange(1,9)#使用randrange函数
print num
4、注释
在python中注释使用的是#,#号后面为注释的内容,如上面的例子。
这里还要注意一下其他几种特殊的注释
- 中文注释:#coding:UTF-8
- 跨平台注释:#! /usr/bin/python
5、语句分隔
python中不必使用;分隔,但是一行写多条语句时要使用;分隔。
如
x = 1; y = 2; print x + y
6、变量和常量
变量名由字母、数字或者下划线组成,其中,首字符必须是字母或者下划线。
注意全局变量的定义和使用:
# 在文件的开始处定义全局变量
_a = 1#全局变量,加下划线以示区别
_b = 2
def add():
global _a
_a = 3
return _a + _b
要使用global关键字。
在python中没有直接定义常量的关键字。
7、数据类型
主要的数据类型有:数字、字符串、元祖、列表和字典。
数字直接定义
i = 1
查看i的地址:
i = 1
print id(i)#查看i的地址
查看变量的类型
i = 1
j = 1.
print type(i)
print type(j)
<type 'int'> <type 'float'>
8、运算符
算术运算符 |
算术表达式 |
说 明 |
---|---|---|
+ |
x + y |
加法 |
- |
x - y |
减法 |
* |
x * y |
乘法 |
/ |
x / y |
除法 |
% |
x % y |
求模 |
** |
x ** y |
求幂 |
注:1/2要进行浮点运算,需要导入division模块
from __future__ import division
关系运算符
关系运算符 |
关系表达式 |
说 明 |
---|---|---|
< |
x < y |
小于 |
> |
x > y |
大于 |
<= |
x <= y |
小于等于 |
>= |
x >= y |
大于等于 |
== |
x == y |
等于 |
!=或<> |
x != y或x<>y |
不等于 |
逻辑运算符
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- [Oracle集群软件全解析]Oracle Cluster Registry Utility 参考
- mysqldump命令详解 Part 8 其他的一些的参数的介绍
- mysqldump命令详解 Part 6- --master-data参数的使用
- 腾讯云语音识别.net-sdk使用笔记0818
- mysqldump命令详解 Part 9 mysqldump命令总结
- [MySQL学习笔记] 3.mysqldump命令详解 Part 2 -备份全库
- [MySQL学习笔记]1. MySQL测试数据的构造
- [MySQL学习笔记]2. mysqldump命令详解 Part 1
- 怎样在PF_ring上使用RSS实现网络流量负载均衡
- Docker镜像原理 aufs overlay overlay2
- Zabbix 5.0 LTS 安装
- 技术博客测试: Elasticsearch
- Oracle基本参数(COMPATIBLE)
- Oracle基本参数(CONTROL_FILES)
- Oracle基本参数(DB_BLOCK_SIZE)