人生苦短,我用 python 之入门篇
Python 是一种跨平台的,开源的,免费的,解释型的高级编程语言,它具有丰富和强大的库,其应用领域也非常广泛,在 web 编程/图形处理/黑客编程/大数据处理/网络爬虫和科学计算等领域都能找到其身影。本教程参考《Python从入门到项目实战》
python 简介
Python 中文是“蟒蛇”,1989年由荷兰人 Guido van Rossum(吉多) 发明的一种面向对象的解释型高级编程语言,Python 的设计哲学为 优雅/明确/简单,Python 自发布以来,主要经历了三个版本:
- 1994年发布 Python 1.0 版本(已过时)
- 2000年发布 Python 2.0 版本(2020年官方不再提供支持)
- 2008年发布 Python 3.0 版本
目前 Python 的学习都是基于 3.0 版本的。Python 近几年发展势头迅猛,在编程语言排行榜中多年位居第一

安装 python 解释器
在 python 官网 找到对应操作系统的包,并下载,以 Linux 为例
wget https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tar.xz # 请安装python3
xz -d Python-2.7.15.tar.xz # 解压
tar -xvf Python-2.7.15.tar
cd Python-2.7.15/
./configure --prefix=/usr/lib/python2 # 配置安装目录
sudo make && sudo make install # 编译并安装
sudo ln -s /usr/lib/python2/bin/python2.7 /usr/bin/python2 # 为 python 建立软连接
sudo python2 -m ensurepip --upgrade # 安装 pip
sudo ln -s /usr/lib/python2/bin/pip2.7 /usr/bin/pip2 # 为 pip 建立软连接
python2 -V && pip2 -V # 测试是否安装成功
使用 PyCharm
PyCharm 是由 Jetbrains 公司开发的 Python 集成开发环境,可实现自动代码格式化/智能提示/单元测试/等功能,目前已成为 Python 专业开发人员和初学者的有力工具
python 输入与输出
基本输入和输出
print(输出1, 输出2, end='\n', file=f) # 将结果输出到控制台上, end 为末尾添加内容,file 输出到文件
tip = input('提示文字') # 接收用户键盘输入,无论是字符还是数字都作为字符串读取
注释
# 单行注释,注释是对代码解释说明的标注性文字,提高代码可读性,注释会被 python 解释器忽略 '''
多行注释,一对三单引号且不属于任何语句
''' """
多行注释,一对三双引号且不属于任何语句
""" # coding=utf-8 在文件开头加上中文编码声明注释
代码缩进
Python 不像其他程序设计语言采用大括号“{}”分隔代码快,而是采用代码缩进和冒号“:”区分代码之间的层次,所以 Python 对代码的缩进要求非常严格,同一个级别的代码块的缩进量必须相同,否则将抛出 IndentationError 异常
编码规范
Python 使用 PEP 8 作为编码规范,下面给出规范中一些应该遵守的条目:
- 每个 import 语句只导入一个模块,尽量避免一次导入多个模块
- 不要在行尾添加分号“;”,也不要用分号将两条命令放在同一行
- 建议每行不超过 80 个字符,如果超过建议使用小括号“()”将多行内容隐式连接起来,而不推荐使用反斜杠连接
- 使用必要的空行可以增加代码的可读性,一般在顶级定义(函数或类)之间空两行,而方法定义之间空一行,另外在用于分隔某些功能的位置也可以空一行
- 通常情况下,运算符两侧,函数参数之间,逗号(,)两侧建议使用空格进行分隔
- 应该避免在循环中使用“+”和“+=”运算符累加字符串,这是因为字符串是不可变的,这样做会创建不必要的临时对象,推荐每个子串加入列表,循环结束用 join() 连接
- 适当使用异常处理结构提高程序容错性
命名规范
- 模块名尽量短小,并且全部使用小写字母,可以使用下划线分隔多个字母
- 包名尽量短小,并且全部使用小写字母,不推荐使用下划线,可以用点(.)连接多个字母
- 类名采用单词首字母大写形式
- 模块内部的类采用下划线“_”+首字母大写风格的类名组成
- 函数,类的属性和方法的命名规则同模块类似,全部使用小写字母,多个字母用“_”分隔
- 常量命名时采用全部大写字母,可以使用下划线
- 使用单下划线“_”开头的模块变量或者函数是受保护的,在使用 from xxx import * 语句从模块中导入时这些变量或函数不能被导入
- 使用双下划线“__”开头的实例变量或方法是类私有的
变量与基本数据类型
- 保留字与标识符
- 变量
- 基本数据类型
拓展学习 - 函数
数学函数
| 函数 | 功能 | 语法 |
|---|---|---|
| a | b | c |
人生苦短,我用 python 之入门篇的更多相关文章
- 《python开发技术详解》|百度网盘免费下载|Python开发入门篇
<python开发技术详解>|百度网盘免费下载|Python开发入门篇 提取码:2sby 内容简介 Python是目前最流行的动态脚本语言之一.本书共27章,由浅入深.全面系统地介绍了利 ...
- python正则表达式入门篇
文章来源于:https://www.cnblogs.com/chuxiuhong/p/5885073.html Python 正则表达式入门(初级篇) 本文主要为没有使用正则表达式经验的新手入门所写. ...
- Python之入门篇1
一.安装python解释器 官网: https://www.python.org/downloads/windows/ 自行下载安装,添加环境变量 #测试安装是否成功 windows --> 运 ...
- python——django入门篇
要做一只有自学能力的pythoner,尽管大多数自学都是野生并不规范的,会遇到诸多坑,最后用稀奇古怪的方法解决了,但是先了解一些为以后真正学习道路填坑方便了简直不只一点点...重点来了:感觉以班里同学 ...
- Python学习 - 入门篇1
前言 学习渠道:慕课网:Python入门 记录原因:人总归要向记忆低头[微笑再见.gif] 记录目标:形成简洁的知识点查阅手册 变量和数据类型 变量 赋值 在Python中,可以把任意数据类型赋值给变 ...
- python pyspark入门篇
一.环境介绍: 1.安装jdk 7以上 2.python 2.7.11 3.IDE pycharm 4.package: spark-1.6.0-bin-hadoop2.6.tar.gz 二.Setu ...
- Python学习 - 入门篇2(更新中)
前言 学习渠道:慕课网:Python进阶 记录原因:我只是想边上课边做笔记而已,呵呵哒 食用提示:教程环境基于Python 2.x,有些内容在Python 3.x中已经改变 函数式编程 定义:一种抽象 ...
- Python 图像识别入门篇
一.安装Python依赖 pip install pytesseract pyocr pillow Image pip安装:https://www.cnblogs.com/Javame/p/10918 ...
- python爬虫入门篇
优质爬虫入门源码:https://github.com/lining0806/PythonSpiderNotes Python Spider:https://www.cnblogs.com/wangy ...
随机推荐
- Pulsar Summit Asia 2020 中文专场议题出炉!
关于 Apache Pulsar Apache Pulsar 是 Apache 软件基金会顶级项目,是下一代云原生分布式消息流平台,集消息.存储.轻量化函数式计算为一体,采用计算与存储分离架构设计,支 ...
- 【docker专栏8】使用IDEA远程管理docker镜像及容器服务
使用命令行的方式管理服务器镜像及容器是运维人员最常用的方式,但是有的时候我们不得不远程操作docker或者是面向对docker并不熟悉的技术人员提供能力(配置管理员.测试人员),这种情况下图形界面就有 ...
- Luogu2420 让我们异或吧 (熟练剖分)
\(dis[u] \bigoplus dis[v] = dis[u] \bigoplus dis[v] \bigoplus dis[lca\{x,y\}] \bigoplus dis[lca\{x,y ...
- SvelteUI:运用svelte3构建的网页版UI组件库(升级版)
距离上次分享的svelte-ui 1.0已经一月有余,这次带来全新升级完整版svelte-ui 2.0. 这次优化并新增15+个组件.在开发之初借鉴了element-ui组件库,所以在组件结构及语法上 ...
- PHP极简短连接
可用于短连接开发 随便找个PHP空间存放即可 点击查看代码 <html> <head> <meta charset="utf-8"/> < ...
- JVM之HotSpot虚拟机是如何发起内存回收的? 转载
1.背景 在上一节中,我们掌握了垃圾收集的一些算法,也弄明白了分代回收的原理, 那么HotSpot虚拟机是如何发起内存回收的? 2.如何找到GC Roots根节点(枚举根节点) 从可达性分析中GC R ...
- KingbaseES V8R6 锁等待检测
背景 对于多数数据库,dba技能之一就是查找锁.锁的存在有效合理的在多并发场景下保证业务有序进行.下面我们看一下KingbaseESV8R6中查找阻塞的方法. 1.找到"被阻塞者" ...
- 第四周(实际是n+周)
1. tomcat启动报错 报错内容:ERROR RUNNING 'TOMCAT': UNABLE TO OPEN DEBUGGER PORT (127.0.0.1:38667): JAVA.NET. ...
- 几篇关于MySQL数据同步到Elasticsearch的文章---第二篇:canal 实现Mysql到Elasticsearch实时增量同步
文章转载自: https://mp.weixin.qq.com/s?__biz=MzI2NDY1MTA3OQ==&mid=2247484377&idx=1&sn=199bc88 ...
- Gitlab添加K8S集群
介绍如何在Gitlab项目中添加K8S集群,以便使用K8S集群部署gitlab-runner帮我们运行gitlab的CI/CD. 参考官方文档:https://docs.gitlab.com/ee/u ...