1 、python语言介绍
python 的创始人: Guido Van Rossum
2 、python是一门什么样的语言
编程语言主要从以下几个角度进行分类: 编译型,静态型,动态性,强类型定义语言和弱类型定义语言1) 编译型:有一个负责翻译的程序来对我们的源代码进行转换,生成对应的可执行代码,这个过程就是编译(Compile),而负责编译的程序就被称为编译器(Compiler)
2)通常我们所说的动态语言,静态语言是指动态类型语言和静态类型语言 (1)动态类型语言:是指在运行期间采取做数据类型检查的语言。即在用动态类型的语言编程时,永远也不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。典型的是python和Ruby (2)静态类型语言:数据类型是在编译期间检查的,也就是说在写程序的时候要声明所有变量的数据类型。C/C++是静态类型语言的典型代表,其他的静态类型语言还有C#,JAVA3 、 Python 能做什么?
网络应用、科学运算、 GUI 程序、系统管理工具、其他等等
python 的优缺点:
优点:简单、开发效率高、高级语言、可移植性、可扩展性、可嵌入性缺点:速度慢,但是相对的、代码不能加密、线程不能利用多 CPU 问题
4 、 python 解释器: C python 、IPython、PyPy、Jython、IronPython
---------------- 以上是一些基础的python知识---------------
1 、如果用的 ubantu 系统的 linux ,默认存在的是两个 python 版本: 2.7 和 3.5 ,默认执行 python , 启动的是2.7版本
如果想要启动 3.5 版本,需要做如下操作
ln -s /usr/bin/python3. 5 /usr/bin/python (需要在 root 下用户执行或者 sudo )
查看自己的 python 的版本:
Python -V

2 、开始 python 的第一个程序:
代码内容如下:
代码中开头的: # ! /usr/bin/env python 与编写 shell 程序时 # ! /bin/bash 意思是一样的声明要使用的解释器类型!
运行结果如下:
3 、第二个小程序关于猜年龄:
代码内容如下: 在linux中写的一个版本:
运行结果如下:

对上面猜你年龄程序的一些分析如下:

对于 input 在 2.7 里面的是 raw _input ()
在 3.5 里面同样的 print 需要 print ()
对于 if 和 else 后面的冒号为规定格式
代码里的 int 就是为了将输入的字符串转换为 int 类型,默认输入的内容都是字符串 string 类型
版本1: (用了if…elif…else)1 age_of_dean = 23
2 guess_age = int(input("input you guess:"))
3 if guess_age == age_of_dean:
4 print("you got it")
5 elif guess_age > age_of_dean:
6 print("think smaller.....")
7 else:
8 print("think bigger.......")
版本2: (用了while循环)
1 age_of_dean = 23
2
3 count = 0
4
5 while count<3:
6
7 guess_age = int(input("input you guess:"))
8
9 if guess_age == age_of_dean:
10
11 print("you got it")
12
13 break
14 elif guess_age > age_of_dean:
15
16 print("think smaller.....")
17
18 else:
19
20 print("think bigger.......")
21
22 count +=1
23
24 else:
25
26 print("you guess is too manys,fuck off")
版本3: (任意玩版本)
age_of_dean = 23
count = 0
while count<3:
guess_age = int(input("input you guess:"))
if guess_age == age_of_dean:
print("you got it")
break
elif guess_age > age_of_dean:
print("think smaller.....")
else:
print("think bigger.......")
count +=1
if count == 3:
input_continue = input("Do you want to continue to guess:")
if input_continue != "n":
count = 0
版本4:(for循环)
age_of_dean = 23
for i in range(3):
guess_age = int(input("input you guess:"))
if guess_age == age_of_dean:
print("you got it")
break
elif guess_age > age_of_dean:
print("think smaller.....")
else:
print("think bigger.......")
else:
print("you guess is too manys,fuck off")
4 、关于格式化输出的三种方法:
方法1:
Name = input("Name:")
Age = input("Age:")
Job = input("Job:")
Salary = input("Salary:")
info1 = '''--------info of %s-------
Name:%s
Age:%s
Job:%s
Salary:%s
''' %(Name,Name,Age,Job,Salary)
print(info1)
方法2:
Name = input("Name:")
Age = input("Age:")
Job = input("Job:")
Salary = input("Salary:")
info2 = '''--------info of {0}-------
Name:{0}
Age:{1}
Job:{2}
Salary:{3}
''' .format(Name,Name,Age,Job,Salary)
方法3:
info3 = '''--------info of {_name}-------
Name:{_name}
Age:{_age}
Job:{_job}
Salary:{_salary}
''' .format(_name=Name,_age=Age,_job=Job,_salary=Salary)
print(info2)
5 、变量的明名规则:
python 变量的命名只能由数字、字母和下划线 3 种字符组成,且第一个字符串必须为字符或者下划线。
例如: name , Sutdent ,Li_li
不符合的规则如下: M .C ,$23,#11,zhao Fan,C++这些都是错误的命名
6 、关于赋值后在内存中的关系
例子代码如下: name = "Dean" name2 = name print("My name is ",name,name2) name = "zhaofan" print("My name is ",name,name2) 运行结果如下:
从上面可以看出,当你把一个变量 name 赋值给另一个变量 name 2 时,解释器只是把name变量指向的内存地址赋值给了name2,因此name和name2并未发生直接的关联,只不过是他们都同时指向了同一个内存地址而已,这也是为什么你把name再指向一个新的地址后,而name2的值还保持不变的原因