ython简介

  Python的创始人为Guido van Rossum。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC 语言的一种继承。之所以选中Python(大蟒蛇的意思)作为程序的名字,是因为他是一个叫Monty Python的喜剧团体的爱好者。

  ABC是由Guido参加设计的一种教学语言。就Guido本人看来,ABC 这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,Guido 认为是非开放造成的。Guido 决心在Python 中避免这一错误。同时,他还想实现在ABC 中闪现过但未曾实现的东西。

  就这样,Python在Guido手中诞生了。可以说,Python是从ABC发展起来,主要受到了Modula-3(另一种相当优美且强大的语言,为小型团体所设计的)的影响。并且结合了Unix shell和C的习惯。

  Python  已经成为最受欢迎的程序设计语言之一。2011年1月,它被TIOBE编程语言排行榜评为2010年度语言。自从2004年以后,python的使用率是呈线性增长 。

Python入门

一、python安装

windows系统:

1
2
3
4
5
6
7
1、下载安装包
    https://www.python.org/downloads/
2、安装
    默认安装路径:C:\python35
3、配置环境变量
    【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【Python安装目录追加到变值值中,用 ; 分割】
    如:原来的值;C:\python35,切记前面有分号

linux系统:

1
2
3
<span style="font-size: 12px;">无需安装,原装Python环境</span><br><span style="font-size: 12px;">
ps:如果自带2.6,请更新至2.7
</span>

二、python初试

在 /home/python/ 目录下创建 hello.py 文件,内容如下:

1
2
3
4
5
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#-Author-Lian
 
print ("Hello World!")

执行: ./hello.py      注:执行前需给予 hello.py 执行权限,chmod 755 hello.py

三、变量赋值及命名规则

① 声明一个变量name,变量name的值为:“lzl”

1
2
3
4
#!/usr/bin/env python
# -*- coding: utf-8 -*-
  
name = "lzl"

② 变量命名的规则

1
2
3
4
5
6
7
<span style="font-size: 12px;">变量定义的规则:
 
变量名只能是 字母、数字或下划线的任意组合
变量名的第一个字符不能是数字
以下关键字不能声明为变量名</span>
['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']

③ 扩展 (给变量name1赋值Alex li,变量name2赋值为变量name1,name1重赋值Jack Chen,此时name2的值为多少?)

1
2
3
4
5
6
7
8
9
10
11
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#-Author-Lian
name1 = "Alex Li"
 
name2 = name
print(name1, name2)
 
name1 = "Jack Chen"
 
print("What is the value of name2 now?")

四、字符编码

python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill)

ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256,所以,ASCII码最多只能表示 256 个符号。

显然ASCII码无法将世界上的各种文字和符号全部表示,所以,就需要新出一种可以代表所有字符和符号的编码,即:Unicode

Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536,
注:此处说的的是最少2个字节,可能更多

UTF-8,是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存...

所以,python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill),如果是如下代码的话:

报错:ascii码无法表示中文

1
2
3
#!/usr/bin/env python
   
print "你好,世界"

改正:应该显示的告诉python解释器,用什么编码来执行源代码,即:

1
2
3
4
#!/usr/bin/env python
# -*- coding: utf-8 -*-
   
print "你好,世界"

五、用户交互及字符串拼接

跟用户进行交互,并把输入的信息打印出来

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#-Author-Lian
###########用户交互及字符串拼接################
# python2.X与python3.X区别:    python2.X raw_input = python3.X input
# 提示用户输入姓名、年龄、工作、工资并以信息列表的形式打印出
 
name = input("Please input your name:")
age = int(input("Please input your age:"))  #str强制转换为int
job = input("Please input your job:")
salary = input("Please input your salary:")
 
info1 = '''
------------  Info of %s  ---------
Name:%s
Age:%d
Job:%s
Salary:%s
''' %(name,name,age,job,salary)     #%s检测数据类型为字符串,%d检测数据类型为整数,%f检测数据类型为浮点数 强制
print(info1)
 
info2 = '''
------------  Info of {_Name}  ---------
Name:{_Name}
Age:{_Age}
Job:{_Job}
Salary:{_Salary}
''' .format(_Name=name,
            _Age=age,
            _Job=job,
            _Salary=salary)
print(info2)
 
info3 = '''
------------  Info of {0}  ---------
Name:{0}
Age:{1}
Job:{2}
Salary:{3}
''' .format(name,age,job,salary)
print(info3)

六、if判断语句

① 实例:用if语句验证用户登录,密文密码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#-Author-Lian
#############验证用户登录-密文密码##############
# 提示输入用户名密码
# 验证用户名密码
#       如果错误,则输出用户名密码错误
#       如果成功,则输出欢迎,xxx!
 
import getpass     #标准模块,import调用
 
name = input("Please input your name:")
password = getpass.getpass("Please input your password:")
 
if name == "lzl" and pwd == "lzl@123":
    print ("Welcome to,lzl!")
else:
    print ("The user name and password mistake")

七、while循环语句

① 实例:猜数字游戏升级版(循环猜数字,直到猜到为止)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#-Author-Lian
##############猜幸运数字################
 
lucky_num = 66       # 设置幸运数字
 
while True:    # while循环:
                     # 输入猜的的幸运数字范围1-100
    guess_num = int(input("Please enter your guess lucky number(1-100):"))
 
    if guess_num == lucky_num:      # 如果猜对,输出恭喜你猜对了,并退出
        print ("Congratulations you guessed it!")
        break                       #break 结束循环 continue 跳出本次循环,继续下次循环 exit 结束程序
    elif guess_num > lucky_num :    # 如果猜的数字大了,输出数字往小点猜
        print ("Think it smaller...")
    else:                           # 否则,输出数字往大点猜
        print ("Think it bigger...")

八、for循环语句

实例:用for循环实现猜数字游戏,限制三次机会

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#-Author-Lian
##############猜幸运数字+次数限制################
 
lucky_num = 66       # 设置幸运数字
 
for in range(3):    # while判断count是否小于3,如果小于3则:
                     # 输入猜的的幸运数字范围1-100
    guess_num = int(input("Please enter your guess lucky number(1-100):"))
 
    if guess_num == lucky_num:      # 如果猜对,输出恭喜你猜对了,并退出
        print ("Congratulations you guessed it!")
        break                       #break 结束循环 continue 跳出本次循环,继续下次循环 exit 结束程序
    elif guess_num > lucky_num :    # 如果猜的数字大了,输出数字往小点猜
        print ("Think it smaller...")
    else:                           # 否则,输出数字往大点猜
        print ("Think it bigger...")
else:
    print ("You tried so many times!")  #while循环超过三次,则输出试过太多次了

Python【第一章】:简介和入门的更多相关文章

  1. Python第一篇-简介和入门

    简介: Python[1]  (英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/), 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第 ...

  2. ROS机器人程序设计(原书第2版)补充资料 (壹) 第一章 ROS系统入门

    ROS机器人程序设计(原书第2版)补充资料 (壹) 第一章 ROS系统入门 书中,大部分出现hydro的地方,直接替换为indigo或jade或kinetic,即可在对应版本中使用. 第一章主要包括R ...

  3. 简学Python第一章__进入PY的世界

    #cnblogs_post_body h2 { background: linear-gradient(to bottom, #18c0ff 0%,#0c7eff 100%); color: #fff ...

  4. 第一章 corejava的入门

    第一章 corejava的入门一:什么是语言语言=os+数据结构+算法+思想os:操作系统数据结构:队,栈,二叉树,链表算法:做游戏开发时非常重要面试题:int a>0,b>0只使用一条输 ...

  5. 读书笔记 - javascript 高级程序设计 - 第一章 简介

      第一章 简介   诞生时间 1995 最初用途 客服端验证 第一版标准 注意是标准 1997年 Ecma-262  一个完整的js实现由三部分组成 ECMAScript DOM 文档对象模型 BO ...

  6. python第一章:简介与安装--小白博客

    Python简介 Python是一种计算机程序设计语言.是一种动态的.面向对象的脚本语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的.大型项 ...

  7. python第一章计算机基础

    第一章 计算机基础 1.1 硬件 计算机基本的硬件由:CPU / 内存 / 主板 / 硬盘 / 网卡 / 显卡 / 显示器 等组成,只有硬件但硬件之间无法进行交流和通信. 1.2 操作系统 操作系统用 ...

  8. Python第一章-基础知识

    第一章:基础知识 1.1 安装python.     直接官网下载最新的python然后默认安装就可以了,然后开始菜单里找到pyhton *.*.* Shell.exe运行python的交互shell ...

  9. 学习python 第一章

    目录 第一章... 1 1:新建项目... 1 2:修改默认模板... 3 3:什么是变量... 3 4:重指向... 3 5:常量的表示... 4 6:格式化输出(三种方法)... 4 7:打印一个 ...

  10. python第一章练习题

    本章总节 练习题 1.简述编译型与解释型语言的区别,且分别列出你知道的哪些语言属于编译型,哪些属于解释 编译型:把源代码编译成机器语言的可执行文件,程序执行的时候执行可执行文件即可. 优点:程序执行不 ...

随机推荐

  1. SOA架构设计经验分享—架构、职责、数据一致性

    阅读目录: 1.背景介绍 2.SOA的架构层次 2.1.应用服务(原子服务) 2.2.组合服务 2.3.业务服务(编排服务) 3.SOA化的重构 3.1.保留服务空间,为了将来服务的组合 4.运用DD ...

  2. 【转】hive导入数据出现NULL

    在把hdfs上数据迁移到hive中的表时,若出现数据位NULL,是因为没有指定列分隔符. 由于hive默认的分隔符是/u0001(Ctrl+A),为了平滑迁移,需要在创建表格时指定数据的分割符号,语法 ...

  3. mapreduce导出MSSQL的数据到HDFS

    今天想通过一些数据,来测试一下我的<基于信息熵的无字典分词算法>这篇文章的正确性.就写了一下MapReduce程序从MSSQL SERVER2008数据库里取数据分析.程序发布到hadoo ...

  4. [WPF系列]-数据邦定之DataTemplate 使用 DataTrigger 来应用属性值

    使用 DataTrigger 来应用属性值 当前表示不会告诉我们某个 Task 是家庭任务还是办公室任务.记住 Task 对象拥有类型为 TaskType 的 TaskType 属性,该类型是一个枚举 ...

  5. Windows Live Writer测试

    第一次使用Windows Live Writer,一堆问题,不知道是中国强大的局域网防火墙问题还是咋的,弄了半天. 1.C++的测试代码: int _tmain(int argc, _TCHAR* a ...

  6. mysql添加索引命令

    创建脚本 1.PRIMARY  KEY(主键索引)mysql>ALTER  TABLE  `table_name`  ADD  PRIMARY  KEY (  `column`  ) 2.UNI ...

  7. linux Shell脚本编码格式

    在windows下开发,写好的shell脚本,放到linux上执行,往往会因为编码格式的问题存在兼容问题: -bash: ./lbs-circle-server.sh: /bin/sh^M: bad ...

  8. 【2016-11-3】【坚持学习】【Day18】【我认识的ORM】

    我学过或者用过的ORM有几种 EF NHibernate DevExpress  xpo (第一家公司用这个,也是很省力的orm,现在已经不记得了.) 今天晚上想找一下有没有轻量级的orm: flue ...

  9. 简单的词法分析和语法分析(C++实现,CodeBlocks+GCC编译)

    说明: 分析的语言是SNL语言,详见<编译程序的设计与实现>( 刘磊.金英.张晶.张荷花.单郸编著) 词法分析就是实现了词法分析的自动机 语法分析使用递归下降法 运行结果: 词法分析 得到 ...

  10. js中的hasOwnProperty和isPrototypeOf方法

    hasOwnProperty:是用来判断一个对象是否有你给出名称的属性或对象.不过需要注意的是,此方法无法检查该对象的原型链中是否具有该属性,该属性必须是对象本身的一个成员. isPrototypeO ...