python基础一

  1. 云栖社区>
  2. 博客>
  3. 正文

python基础一

袁勇i 2018-04-27 08:19:00 浏览1093
展开阅读全文

一、python介绍

1.出生与应用

  python是由龟叔在1989年的一个无聊圣诞节开发出来的,他可真是牛批。。。。开发了之后,python语言在程序员的世界里发展迅猛,到底有多牛逼,请看下图。

由此可见python语言在2017年已经超过昔日的大佬PHP..

  在国内目前也应用的很广泛瓣、知乎、百度、腾讯、汽车之家、美团等。

  另外值得一提的是python目前主要分3.x和2.X版本,2.x的版本将在2020年停止更新。

2.python是什么编程语言

编程语言主要从以下几个角度为进行分类,编译型和解释型、静态语言和动态语言、强类型定义语言和弱类型定义语言,每个分类代表什么意思呢,我们一起来看一下。

2.1 编译型与解释型。

编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快; 

解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快的. 

这是因为计算机不能直接认识并执行我们写的语句,它只能认识机器语言(是二进制的形式)

 

 

编译型
优点:编译器一般会有预编译的过程对代码进行优化。因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高。可以脱离语言环境独立运行。
缺点:编译之后如果需要修改就需要整个模块重新编译。编译的时候根据对应的运行环境生成机器码,不同的操作系统之间移植就会有问题,需要根据运行的操作系统环境编译不同的可执行文件。

解释型
优点:有良好的平台兼容性,在任何环境中都可以运行,前提是安装了解释器(虚拟机)。灵活,修改代码的时候直接修改就可以,可以快速部署,不用停机维护。

缺点:每次运行的时候都要解释一遍,性能上不如编译型语言。

2.2动态语言和静态语言
通常我们所说的动态语言、静态语言是指动态类型语言和静态类型语言。

(1)动态类型语言:动态类型语言是指在运行期间才去做数据类型检查的语言,也就是说,在用动态类型的语言编程时,永远也不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。Python和Ruby就是一种典型的动态类型语言,其他的各种脚本语言如VBScript也多少属于动态类型语言。

(2)静态类型语言:静态类型语言与动态类型语言刚好相反,它的数据类型是在编译其间检查的,也就是说在写程序时要声明所有变量的数据类型,C/C++是静态类型语言的典型代表,其他的静态类型语言还有C#、JAVA等。

2.3强类型定义语言和弱类型定义语言

(1)强类型定义语言:强制数据类型定义的语言。也就是说,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。举个例子:如果你定义了一个整型变量a,那么程序根本不可能将a当作字符串类型处理。强类型定义语言是类型安全的语言。

(2)弱类型定义语言:数据类型可以被忽略的语言。它与强类型定义语言相反, 一个变量可以赋不同数据类型的值。

强类型定义语言在速度上可能略逊色于弱类型定义语言,但是强类型定义语言带来的严谨性能够有效的避免许多错误。另外,“这门语言是不是动态语言”与“这门语言是否类型安全”之间是完全没有联系的!
例如:Python是动态语言,是强类型定义语言(类型安全的语言); VBScript是动态语言,是弱类型定义语言(类型不安全的语言); JAVA是静态语言,是强类型定义语言(类型安全的语言)。

通过上面这些介绍,我们可以得出,python是一门动态解释性的强类型定义语言。

3.python的优缺点

  优点:1.python的开发效率很高      python有非常强大的第三方库

              2.可移植性     由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工 作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的                                       所有Python程序无需修改就几乎可以在市场上所有的系统平台上运行

              3可嵌入型    你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能

4.python易学  优雅  简单

5.可扩展性             如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。

缺点    

 

  1.速度慢

   2.代码不能加密

3.  线程不能利用多CPU问题

3.python的种类

python分为Cpython Jpython IronPython  PyPy   IPytho  

所有的python的代码规则一样 不同的只是解释器 我们一般都使用的Cpython

二、 下载安装python

安装python这里就不多说了 相信大家都应该会安装

三、python的基础知识

1、python的的第一个运行程序

首先配置好开发环境之后 在notepad++里面创建一个py文件  打开python解释器 运行第一个py文件

 

2、变量

变量的规则:1、只能是数字、字母、_   组成

                      2、不能以数字开头  变量名不能是中文

                      3、不能是python中的关键字

                      4、要具有可描述性  不能没有意义

                    

                      5,变量不能太长。
                      6,官方推荐:

#驼峰体

AgeOfOldboy = 56

NumberOfStudents = 100

#下划线

age_of_oldboy = 56

number_of_students = 80

3、常量

在python中程序员默认把全大写的变量当做常量

比如:BIRTHDAY=20060904

4、注释

原因:帮你或者别人来更好地理解代码

注释分为单行注释:#

多行注释:'''woaini

        nikezhentamdehuai '''

5、基础的数据类型

字符串 数字   布尔值  列表  元祖  字典

type()可以查看数据类型

6、用户交互

input()python3

raw_input()  python2

input 的数据类型为字符串

#!/usr/bin/env python
#:*-* encoding:utf-8 *-*
#print "hello 世界"
name = input('请输入的名字:')
age = input('请输入你的年龄:')
hobby = input('请输入你的爱好:')
s = "我的名字是" + name +"我的年龄" + age +"我的爱好是"+ hobby
print(s)

 

7,if语句
第一种结构:
if 条件:
结果
第二种结构:

if 条件:
结果
else:
结果
第三种结构:

 

choice = input('请输入你的猜的数字:')
if choice == '2':
    print('我请你吃饭')
elif choice == '6':
    print('免一周作业')
elif choice == '3':
    print('一起去大保健')

 


第四种结构:

choice = input('请输入你的猜的数字:')
if choice == '2':
    print('我请你吃饭')
elif choice == '6':
    print('免一周作业')
elif choice == '3':
    print('一起去大保健')
else:
    print('选择错误.....')

 


第五种结构:
if 条件:
    if 条件:
        结果
else:
    结果
else:
    结果

int ---> str str(12)
str ---> int '123' '123q' 全部由数字组成的字符串才能转换成数字
int('123')

8、while语句。

while 条件:
    结果

跳出循环的条件:
1,改变条件。
2,break。

break : 结束循环。
continue:结束本次循环,继续下一次循环。

9、格式化输出

有时候我们需要print一个固定的格式

比如我们要输出如下的一个信息

------------ info of yuanyong -----------
Name  : yuanyong
Age   : 22
job   : it
Hobbie: girl
------------- end -----------------
name = input("请输入你的名字:")
job=input("请输入你的工作:")
age=input("请输入你的年龄:")
info=('''-------info of   %s---------
            name : %s
            job     : %s
            age    : %s'''
           ------end-------''') % (name, name ,job,age)
print(info)

 

网友评论

登录后评论
0/500
评论
袁勇i
+ 关注