Python之路,第一篇:Python入门与基础

时间:2021-10-29 06:22:52

第一篇:Python入门与基础

1,什么是python?

Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。

2,python的特征:

(1)易于学习,易于利用;

(2)开发效率高,内建众多数据类型,强大的标准库支持;

(3)高级语言;

(4)可移植性,基于开放源代码特性

(5)可扩展性,如果你需要一段运行很快的关键代码,或者是想要编写一些不愿开放的算法,你可以使用C或C++完成那部分程序,然后从你的Python程序中调用。

(6)可嵌入,你可以将Python嵌入到C/C++程序,让你的程序的用户获得"脚本化"的能力。

3,python的安装:

(1)Windows安装:

    (1)下载安装包

       (2)配置环境变量
  • 右键点击"计算机",然后点击"属性"
  • 然后点击"高级系统设置"
  • 选择"系统变量"窗口下面的"Path",双击即可;
  • 然后在"Path"行,添加python安装路径即可。

(2)Linux 安装:

(1)下载安装包(系统可能自带python2.7根据需求安装)

浏览器访问https://www.python.org/downloads/source/

(2)安装软件包依赖

#yum groupinstall "Development tools"
#yum install gcc patch libffi-devel python-devel  zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y

(3)安装python3.X

      #tar  -zxvf   Pythonxxx

#cd  Pythonxxxx

#./configure  --prefix=/usr/bin/python3.X

       #make  && make  install

(3)在bash linux 输入环境变量:

#vi .bash_profile
export PATH=$PATH:/usr/bin/python3.X/bin
#source .bash_profile

4 , 第一个python程序

(1)查看python 版本

进入python交互模式
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:18:55) [MSC v.1900 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.

(2)开始第一个“hello world!”程序

#!/usr/bin/python3

print("hello world !")

###运行结果###
# hello world !

(3)基本规则:

语句,注释,最大80行,通常以py结尾的扩展名。

(4)python程序的组成

程序由模块组成;

模块由语句、函数、类组成;

语句包含表达式;

        表达式建立并处理对象;

5,python数字与算数表达式

python数字

python核心数字类型与内置对象

数字类型:

(1)整型(int)和浮点型(float)

  数字常量的表示方法:整数int
二进制:(以0B开头)
八进制:(以0o开头, 格式0obb)
十进制:3.0 、 3.14
十六进制:(以0x开头,列子:0x1A、 0x1a2b3c)
浮点数表示方法两种:
A,小数:3.0
B,科学计数法:(格式: 小数 e/E + 十的n次幂)
>>> type(10)
<class 'int'> #整数
>>> type(20.3)
<class 'float'> #浮点数
>>> 6.18E-1
0.618 #科学计数法:

(2)复数(complex)

>>> type(2+3.8j)
<class 'complex'>
>>> type(2.3j)
<class 'complex'>
>>> type(0+3.5j)
<class 'complex'>
#复数格式: a + bj (a是实部, b是虚部,其中a可以是0,可以省略。)以J或j结尾

(3)布尔值bool 和 空值 None

布尔值由真(成立)和假(不成立)两种:

True 的值是1

False 的值是0

空值是特殊的常量,不表示任何类型。

作用:通常用来绑定占位符,变了解除绑定

说明:空值和任何类其他类型的对象永远返回的是False。

算数表达式

概念:表达式由一个数字(或对象)或数字和运算符组成用来表示;表达式通常用来让计算机做一些事情并且返回结果的方法。

算数运算符:

+  加法 、  -   减法、  *  乘法、  /  除法、  % 求余(取模)、 //  地板除(floordiv) 、  **  幂运算

>>> 2+2
4
>>> 3-2
1
>>> 3*2
6
>>> 3/2
1.5 #除不会丢小数点位 >>> 5//2
2
>>> 5/2
2.5
>>> -5//2
-3
>>> 5/3
1.6666666666666667
>>> -5//3
-2
#地板除的作用: 除的结果去掉小数部分,向下取整。 >>> 7%3
1 #求余
>>> -5 % 3
1
>>> (-6 + 1) % 3
1
>>> -9%3
0
>>> -9%4
3
>>> (-12 + 3)%4
3
>>> 9%4
1
#x%y 求余得【0,y】之间的数

运算符的优先级

从高到低: **  、  *  /    //     %  (同一优先级由左向右运算)、  +  -

用括号将表达式分组, 先算()内的;

6,变量

概念:变量是关联一个对象的符号(标识符)。

变量名的命名方法:

变量名由字母或下划线开头,后面跟字母或者下划线或数字;

不能使用python关键字

说明: 变量区分大小写

合法的变量名

a  、 bb1 、  _a  、  _1a  、 __aaa_

不合法的变量名

1a 、  123 、 $a  、 #a 、-b

python关键字

True , False , None   , del  ,if  、 else等等

赋值运算符(  =  )

格式: 变量名=表达式

作用:1,当没有变量时,创建一个变量,同时将这个变量绑定到对象上

2,当变量存在时,改变此变量关联的对象;

3,用变量访问关联的对象;

>>> pi = 3.14
>>> pi * 3 *2
18.84
>>> pi
3.14
>>> pi = 10 >>> a = 1 + 2 #a绑定的是1 + 2 ,而不是 3.
>>> a
3
>>> b = a
>>> b
3
>>> a= None #赋值是None 对象时,1+2 对象则被释放。
>>> a

python中的关联、绑定和引用的关系: 都是指变量和一个对象的关联关系;

序列赋值语法:

变量名1,变量名2 。。。 = 对象1, 对象2。。。

变量名1,变量名2 。。。 = 对象1, 对象2。。。

变量名1,变量名2 。。。 = 对象1, 对象2。。。

>>> a = 10
>>> b = 20 #方法1
>>> print(a,b)
10 20
>>> a,b = 11,21 #方法2
>>> print(a,b)
11 21
>>> a,b = b,a #方法3
>>> print(a,b)
21 11

7,is运算符

is作用:两个变量是否绑定同一个对象,当绑定同一个对象时,返回True, 否则返回False。

is not 作用: 与is相反

语法: x is  y           ;  x   is  not   y

>>> a=100
>>> b=200
>>> id(a)
1435962928
>>> id(b)
1435966128
>>> a is b
False
>>> a is not b
True
>>> b = a
>>> b
100
>>> id(a)
1435962928
>>> id(b)
1435962928
>>> a is b
True
>>> a is not b
False
>>>

8,del 语句

作用:用于删除变量,同时解除与对象的关系;如果可能则释入对象;

语法格式:

del   变量名1   变量名2 。。。。

>>> a = 10
>>> b = 10
>>> del a ,b
>>> a
Traceback (most recent call last):
File "<pyshell#105>", line 1, in <module>
a
NameError: name 'a' is not defined
>>> b
Traceback (most recent call last):
File "<pyshell#106>", line 1, in <module>
b
NameError: name 'b' is not defined
>>>

9, help 函数

在交互模式下,查看当前作用域所有变量

help()函数

例子:help(__main__)

退出‘q’;

>>> help("__main__")
Help on module __main__: NAME
__main__ DATA
p1 = 10
p2 = 10
pi = 10 FIL >>> p1
10
>>> del p1
>>> help("__main__")
Help on module __main__: NAME
__main__ DATA
p2 = 10
pi = 10
>>>

补充:

#!/bin/bash

install_logs="/tmp/python_logs.log"
#
echo `date` >>$install_logs
echo "#########################start scripts############################" >>$install_logs
#install soft
yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y >>$install_logs
#install python3.7.3
mkdir -p /usr/bin/python-3.7.
if [ -x /usr/bin/python-3.7./bin/python3 ]
then
exit
fi >>$install_logs
if [ -d ~/soft ]
then
cd ~/soft;
tar -zxvf Python-3.7..tgz;
if [ -d /usr/bin/python-3.7. ]
then
cd ~/soft/Python-3.7.;
./configure --prefix=/usr/bin/python-3.7.;
make && make install
fi
fi >>$install_logs
#env
echo -e "export PATH=$PATH:/usr/bin/python-3.7.3/bin" >> ~/.bash_profile
#install virtualenvwrapper
source ~/.bash_profile
pip3 install virtualenvwrapper >>$install_logs
mkdir ~/my_env
if [ -d ~/my_env ]
then
echo -e "export WORKON_HOME=~/my_env" >> ~/.bash_profile;
echo -e "export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python-3.7.3/bin/python3" >> ~/.bash_profile
fi >>$install_logs
#source
source ~/.bash_profile
if [ -d /usr/bin/python-3.7./bin/ ]
then
source /usr/bin/python-3.7./bin/virtualenvwrapper.sh
source ~/.bash_profile
fi >>$install_logs
#end
echo `date` >>$install_logs
echo "############################END,SCRIPTS!##########################" >>$install_logs

python3.7.3+Virtualenvwrapper

echo -e "source /usr/bin/python-3.7.3/bin/virtualenvwrapper.sh" >> ~/.bash_profile

source     ~/.bash_profile