Python 学习基础
一、编程语言的发展历史

- 按照翻译方式分为两类:
# 编译型(类似于谷歌翻译):如c、java, 运行速度快,调试麻烦
# 解释型(l类似于同声传译):如Python,运行速度慢,调试麻烦
- 按照特点总结如下:
#机器语言
优点:最底层,执行速度快
缺点:开发效率低 #汇编语言
优点:比较底层,执行速度较快
缺点:开发效率较低 #高级语言
#编译型,以C为例,执行速度快,跨平台差
#解释型:以Python为例,执行速度慢,依赖解释器运行,跨平台强
二、搭建Python环境
- 按照第三方库
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc gcc-c++ make yum -y install libffi-devel
- 从Python官网下载Python的安装包

- 将Python-3.8.0.taz 传到服务器
mv Python-3.8.0.taz /home/
tar -zxvf Python-3.8.0.taz
cd Python-3.8.0 创建一个python安装路径
mkdir -p /usr/local/python3 编译安装
./configure --with-ssl --prefix=/usr/local/python3
make && make install 删除原来的python2 软链接
rm -rf /usr/bin/python 创建新的软链接
ln -s /usr/local/python3/bin/python3.8 /usr/bin/python 查看python版本
[root@kingstar bin]# ls -al|grep python
-rwxr-xr-x. 1 root root 11232 8月 13 05:18 abrt-action-analyze-python
lrwxrwxrwx. 1 root root 29 11月 29 17:18 pip -> /usr/local/python3/bin/pip3.8
lrwxrwxrwx. 1 root root 32 11月 29 13:12 python -> /usr/local/python3/bin/python3.8
lrwxrwxrwx. 1 root root 9 11月 29 11:43 python2 -> python2.7
-rwxr-xr-x. 1 root root 7216 8月 7 08:52 python2.7
[root@kingstar bin]# python -V
Python 3.8.0
[root@kingstar bin]# python2 -V
Python 2.7.5
[root@kingstar bin]# - 将yum的路径改为python2.7 (vim /usr/bin/yum)

- 如果安装pip过程中报错:
#报错 SyntaxError: invalid syntax
vim /usr/libexec/urlgrabber-ext-down
将路径改为python2.7 - 下载get-pip.py
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
- 添加环境变量
echo PATH='/usr/local/python/bin:$PATH' >> /etc/profile
source /etc/profile
三、变量的定义规范以及方式
- 变量的定义规范
# 变量名只能是 字母、数字或下划线的任意组合
# 变量名的第一个字符不能是数字
# 关键字不能声明为变量名
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield'] - 变量的命名方式
# 驼峰体
AgeOfOldboy = 56
NumberOfStudents = 80
# 下划线
age_of_oldboy = 56
number_of_students = 80
四、基本数据类型
- 整形(int)
age = 18
print(type(age)) <class 'int'> 判断一个对象可以转换为整形数据
obj = '99'
if obj.isdigit():
print(True)
else:
print(False) - 浮点型(float)
圆周率
pi = 3.1415926
print(type(pi))
<class 'float'> 注意:可以通过float将字符串式整数(如‘99’)转化为浮点型
float('99') >> 99.0 - 字符串类型(str)
name = 'egon'
print(type(name)) >> <class 'str'>
obj = input('Please enter your age:')
print(type(obj)) >> <class 'str'> - 列表类型(list)
username = ['alex','egon','tank']
- 字典类型(dict)
user_info = {'name':'egon','age':18}
# 根据键来取值,注意key是唯一的
user_info.items()
user_info.keys()
user_info.values()
user_info.get(key) >> value - 元组类型(tuple)
tuple_1 = ('alex',18,'male') - 集合类型(set)
# 集合(set)是0个或多个对想引用的无序集合,这些对象所引用都是哈希运算的
# 集合是可变的。其中的项是无序的,因此,没有索引位置概念
# 集合中,任何元素都没有重复
# set和dict类似,是一组key的集合,但不存储value,且在set中没有重复的key - 布尔类型(bool)
#所有数据类型都自带布尔值
1、None,0,空(空字符串,空列表,空字典等)三种情况下布尔值为False
2、其余均为真
参考文章链接:
https://blog.csdn.net/wodemale/article/details/89341554
https://www.cnblogs.com/linhaifeng/articles/7133167.html
Python 学习基础的更多相关文章
- Python学习基础笔记(全)
换博客了,还是csdn好一些. Python学习基础笔记 1.Python学习-linux下Python3的安装 2.Python学习-数据类型.运算符.条件语句 3.Python学习-循环语句 4. ...
- 《转》python学习--基础下
转自http://www.cnblogs.com/BeginMan/archive/2013/04/12/3016323.html 一.数字 在看<Python 核心编程>的时候,我就有点 ...
- 《转》python学习--基础上
学习的python本来想自己总结,但是发现了一篇不错的大牛的博客,拿来主义,,又被我实践了 关于前两篇如果总结的不详细,因此把他人的转载过来 http://www.cnblogs.com/BeginM ...
- 《转》python学习基础
学习的python本来想自己总结,但是发现了一篇不错的大牛的博客,拿来主义,,又被我实践了 关于前两篇如果总结的不详细,因此把他人的转载过来 http://www.cnblogs.com/BeginM ...
- python学习基础知识
学习python前最好知道的知识点: python之父:Guido van Rossum python是一种面向对象语言 目前python最新的版本是3.8,python2已经逐渐淘汰 python的 ...
- Python ( 学习 基础篇第一部 )
目录 注释 注释的分类 注释的注意点 变量 变量的概念 变量的声明 变量的命名 变量的交换 变量的缓存机制 常量 进制 进制的转换 原码 反码 补码 六大数据类型 Number 的四大类 字符串 st ...
- Python学习——基础篇
1.python的安装 python下载地址:https://www.python.org/downloads/ 安装完成后,运行cmd.exe,输入python 如果出现“p ...
- python学习基础总结
看了一篇python基础的博客 感觉写的很好,总结的很到位,原地址为 http://blog.csdn.net/iloveyin/article/details/38754231 ****** ...
- Python学习-基础知识-2
目录 Python基础知识2 一.二进制 二.文字编码-基础 为什么要有文字编码? 有哪些编码格式? 如何解决不同国家不兼容的编码格式? unicode编码格式的缺点 如何既能全球通用还可以规避uni ...
- python学习-基础知识-1
1.计算机历史 计算机使用高低电压的两种状态来描述信息.计算机可以理解的只有二进制数据即010100011....,1个比特位可以表示的状态只有2种,n个比特位可以表示的状态有2的n次方种. 所以如果 ...
随机推荐
- 计算机网络中OSI参考模型
OSI参考模型 应用层 包括所有能产生网络流量的程序 DNS属于这一层 表示层 用来判断传输之前是否进行加密或压缩处理(二进制.ASCII) 比如出现乱码情况,可能就是表示层的问题 会话层 一个浏览器 ...
- python2.7 操作ceph-cluster S3对象接口 实现: 上传 下载 查询 删除 顺便使用Docker装个owncloud 实现UI管理
python version: python2.7 需要安装得轮子: botofilechunkio command: yum install python-pip&& pip ...
- Kubernetes 各版本镜像列表
以下镜像列表由 kubeadm v1.11.1 导出,若使用预下载镜像离线部署的方式部署,请使用 kubeadm v1.11.1 版本 导出各版本镜像列表: kubeadm config images ...
- crackme---攻防世界
首先下载附件之后,查壳 虽然什么也没有发现,但是看一下区段就知道,这个是北斗的壳.所以我们首先载入od开始把壳脱掉 这里面也可以看到pushfd和pushad是北斗壳的特征 这里面我使用是esp定律脱 ...
- yii2.0 引入权限控制插件
权限控制:"mdmsoft/yii2-admin": "~2.0" 教程:http://www.cnblogs.com/zyf-zhaoyafei/p/5825 ...
- 解析基于keras深度学习框架下yolov3的算法
一.前言 由于前一段时间以及实现了基于keras深度学习框架下yolov3的算法,本来想趁着余热将自己的心得体会进行总结,但由于前几天有点事就没有完成计划,现在趁午休时间整理一下. 二.Keras框架 ...
- WEB前段(HTML+JS),后端(MYSQL+PHP)开发基础
一.HTML HTML:超文本标记语言,可以加载JS/CSS/图片/链接等非文字的内容 一切的网页开发技术都需要建立在HTML的基础之上 HTML的结构和语法 HTML元素 注释: <!-- ...
- msf自动连接postgresql配置
今天做了一下msf连接数据库的配置,中间碰到了一些坑点这里就不详细叙述了,开始正确的操作方式. 首先对postgresql进行配置以方便连接. root@kali:~# service postgre ...
- C++面试常见问题——09static关键字
static关键字 局部变量 局部变量 局部变量是最常见的量,编译器不会对其进行初始化,除非对其显式赋值,不然初始值是随机的. 普通局部变量存储在栈空间,使用完毕后会立即被释放. 静态局部变量 静态局 ...
- 利用Jenkins实现jdk11+Maven构建springboot项目
目录 原理图 前期准备 Jdk11安装 Jenkins安装 Maven安装 Jenkins的设置 插件安装 变量配置 搭建项目 1.通用配置 2.源码管理 3.构建触发 4.Maven的构建选项 5. ...