第一篇: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

Python之路,第一篇:Python入门与基础的更多相关文章

  1. python之路第一篇

    一.python环境的搭建 1.window下环境的搭建 (1).在 https://www.python.org/downloads/ 下载自己系统所需要的python版本 (2).安装python ...

  2. Python之路(第一篇):Python简介和基础

    一.开发简介 1.开发:      开发语言:               高级语言:python.JAVA.PHP.C#..ruby.Go-->字节码                低级语言: ...

  3. Python之路(第九篇)Python文件操作

    一.文件的操作 文件句柄 = open('文件路径+文件名', '模式') 例子 f = open("test.txt","r",encoding = “utf ...

  4. Python开发【第一篇】:目录

    本系列博文包含 Python基础.前端开发.Web框架.缓存以及队列等,希望可以给正在学习编程的童鞋提供一点帮助!!! Python开发[第一篇]:目录 Python开发[第二篇]:初识Python ...

  5. Python开发【第一篇】:目录

    本系列博文包含Python基础.前端开发.Web框架.缓存以及队列等,希望可以给正在学习Python编程的朋友们提供一点帮助! .Python开发[第一篇]:目录 .Python开发[第二篇]:初始P ...

  6. .NET持续集成与自动化部署之路第一篇——半天搭建你的Jenkins持续集成与自动化部署系统

    .NET持续集成与自动化部署之路第一篇(半天搭建你的Jenkins持续集成与自动化部署系统) 前言     相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛 ...

  7. Python之路第一课Day9--随堂笔记之二(进程、线程、协程篇)

    本节内容 进程.与线程区别 python GIL全局解释器锁 线程 语法 join 线程锁之Lock\Rlock\信号量 将线程变为守护进程 Event事件 queue队列 生产者消费者模型 Queu ...

  8. Python人工智能之路 - 第一篇 : 你得会点儿Python基础

    Python 号称是最接近人工智能的语言,因为它的动态便捷性和灵活的三方扩展,成就了它在人工智能领域的丰碑 走进Python,靠近人工智能 一.编程语言Python的基础 之 "浅入浅出&q ...

  9. Python之路第一课Day6--随堂笔记(面向对象 )

    本节内容: 1. 面向对象编程介绍 2. 为什么要用面向对象进行开发? 3. 面向对象的特性:封装.继承.多态 4. 类.方法   一.面向过程 VS 面向对象  1. 编程范式 编程是 程序 员 用 ...

  10. Python开发【第一篇】:初识Python

    初识python 一.python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解 ...

随机推荐

  1. Redis php常用操作

    $redis = new redis(); //连接 $redis->connect('127.0.0.1',6379); // //设置值 $result = $redis->set(' ...

  2. Linux 下Qt实现守护进程实例(转)

     原文地址:Linux守护进程的编程方法(含实例) 作者:lingdxuyan 参考文献 Linux信号列表(zz) Linux 守护进程的编程方法 linux上编写守护进程的例程 Linux下后台守 ...

  3. npm run build 打包后,如何运行在本地查看效果(Apache服务)

    目前,使用vue-cli脚手架写了一个前端项目,之前一直是使用npm run dev 在8080端口上进行本地调试.项目已经进行一半了,今天有时间突然想使用npm run build进行上线打包,试试 ...

  4. asp企业网站源码部分

    ASP的网页文件的格式是.asp,现在常用于各种动态网站中.PHP是一种 HTML 内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似 ...

  5. malloc用法整理

    malloc函数原型:void *malloc(unsigned int num_bytes); //分配长度为num_bytes字节的内存块 返回值是void指针,void* 表示未确定类型的指针, ...

  6. linux command useradd

    Linux command useradd [Purpose]        Learning linux command useradd to create a new user or update ...

  7. 面向对象之 组合 封装 多态 property 装饰器

    1.组合 什么是组合? 一个对象的属性是来自另一个类的对象,称之为组合 为什么要用组合 组合也是用来解决类与类代码冗余的问题 3.如何用组合 # obj1.xxx=obj2''''''# class ...

  8. js 操作dom

    childNodes 返回当前元素所有子元素的数组 parentNode 返回元素的父节点 document.createElement(tagName) 文档对象上的createElement方法可 ...

  9. [转载] JAVA面试题和项目面试核心要点精华总结(想进大公司必看)

    JAVA面试题和项目面试核心要点精华总结(想进大公司必看) JAVA面试题和项目面试核心要点精华总结(想进大公司必看)

  10. 使用gitblit搭建自己的代码存储仓库

    一.基本准备: 服务器:阿里云的windows server 2008 r2 64位 相关软件: 1.java的jdk包: 2.gitblit程序包(这个不用安装,是绿色的). 二.安装步骤 1.下载 ...