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次方种. 所以如果 ...
随机推荐
- HTML<a>标签作为锚链接
1. 什么是锚链接? <a></a>标签主要作为超链接和锚链接使用.超链接主要指不同html页面之间的跳转,而锚链接指的是同一页面之间的跳转. 锚链接的两种效果: 在当前页面中 ...
- POJ 3669 Meteor Shower BFS求最小时间
Meteor Shower Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 31358 Accepted: 8064 De ...
- 第1节 网站点击流项目(上):4、网站的数据采集,使用flume的taildir实现多个文件的监控采集
一. 模块开发----数据采集 1. 需求 在网站web流量日志分析这种场景中,对数据采集部分的可靠性.容错能力要求通常不会非常严苛,因此使用通用的flume日志采集框架完全可以满足需求. 2. Fl ...
- linux网络编程之shutdown() 与 close()函数详解
linux网络编程之shutdown() 与 close()函数详解 参考TCPIP网络编程和UNP: shutdown函数不能关闭套接字,只能关闭输入和输出流,然后发送EOF,假设套接字为A,那么这 ...
- 009、MySQL取当前时间Unix时间戳,取今天Unix时间戳
#取Unix时间戳 SELECT unix_timestamp( ) ; #取今天时间戳 SELECT unix_timestamp( curdate( ) ); 显示如下: 不忘初心,如果您认为这篇 ...
- 三、深入Vue组件——Vue插槽slot、动态组件
一.插槽slot() 1.1简单插槽slot [功能]用于从父组件中,通过子组件写成双标签,向子组件中放入自定的内容 parent.vue [1]首先把child写成双标签样式,把要插入的内容放双标签 ...
- DevOps 教程
DevOps是一种研发文化,它促进开发团队和运维团队之间更好地协作,以自动化和可重复的方式,更快地将代码部署到生产环境中.DevOps是development和operations两个单词的组合. D ...
- HTTP和HTTPS的区别及HTTPS加密算法
一.HTTP和HTTPS的概念 HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传 ...
- 解决Elasticsearch索引只读
今天添加索引时发现kibana添加索引不生效,页面也没有报错,没有创建成功只是一闪而过. 另外发现各项目日志与当前时间差异很大,filebeat一直报错io timeout 具体报错如下: fileb ...
- vCenter组件和服务
1).随VMware Platform Services Controller一起安装的服务 a. vCenter Single Sign-On身份验证服务 b. vSphere 许可证服务 c. V ...