Python基础学习第一周
Python的基础概念
2017-01-18
- Python的创始人吉多·范罗苏姆,1991年第一个版本,1999年第一个外部框架,2004年诞生目前最流行的WEB框架Django
- Python应用领域:云计算、WEB开发、科学运算/人工智能、系统运维、金融、图形GUI
- Python应用广泛的公司:谷歌、CIA、NASA、YouTube、Instragram、Facebook、Redhat、豆瓣、知乎等
- 编程语言分类:编译型、解释型、静态语言、动态语言、强类型语言和弱类型语言
- 编译型:一次把代码都转换成机器语言,然后写成可执行语言
- 解释型:每执行到源代码某个指令的时候,就将代码转换成二进制代码进行执行
- 静态语言:写程序的时候需要声明所有变量的数据类型
- 动态语言:赋值的时候已经在内部将数据类型记录
- 强类型:一旦指定数据类型,不经过强制转换就永远是这个类型
- 弱类型:数据类型可以被忽略
Python是动态解释型的强类型定义语言
- 使用Python的优点:简单易懂;开发效率高,拥有强大的第三方库,多模块支持;是一种高级语言,无需考虑内存一类的底层细节;具有可移植性,开源的,可以移植在不同平台使用;具有可扩展性,某些部分可以用C或者C#来写;具有可嵌入型,可以把Python嵌入到C/C++中。
- 使用Python的缺点:速度慢;代码默认不能加密;线程不能用多CPU。
PYTHON解释器版本
- Cpython:使用C语言开发的,最常用的Python2.7,开发者可以支持到2020年。提示符:>>>
- Ipython:基于Cpython,在交互式上有所增强,提示符:In[1]
- PyPy:采用JIT技术,对Python代码进行动态编译,提高执行速度
- Jpython:运行在JAVA平台,可以把Python编译成Java
- Ironpython:运行在微软、NET平台,可以把Python编译成.net字节码
如果需要和Java或者.NET进行交互,推荐通过网络调用的方式,确保程序间的独立性
字符编码
- 默认ASCII编码,最多8位1个字节,最多可表示255个符号。Python2默认编码,不支持中文。
- 1980年GB2312,可支持72*94=6768个中文字符,常用于MP3、手机
- 1995年GBK1.0,可支持21886个符号
- 2000年GB18030,可支持28484个汉字
- Unicode,统一码、万国码,最少16位(2个字节)
- UTF-8,对Unicode进行压缩和优化:英文1个字节,汉字3个字节,欧洲2个字节。Python3默认编码支持中文。
可以在第一行声明字符集:
# -*- coding : utf-8 -*-
小程序练习
- Hello world!
1 print ("Hello world!")
- 赋值数据类型
数值型:age=int(input("age:"))
字符型:name=str(input("name:"))
- input输出%s和{}
name=input("name:")
age=input("age:")
info = '''
-----info of %s----
name:%s
age:%s
'''%(name,name,age)
print(info)
1 name=input("name:")
2 age=input("age:")
3 info = '''
4 -----info of {_name}----
5 name:{_name}
6 age:{_age}
7 '''.format(_name=name,_age=age)
8 print(info)
- if else判断
1 _usrname= "david"
2 _password="abc123"
3 usrname=input("name:")
4 password=input("password:")
5 if usrname ==_usrname and password ==_password:
6 print("welcome {name} login...".format(name=usrname))
7 else :
8 print("Invalid usrname or password!")
- while循环
1 count =0
2 for i in range (10):
3 while count <3 :
4 print (i)
5 i +=2
6 count +=1
1 _age=12
2 count=0
3 while count <3 :
4 age =int(input("age:"))
5 if age ==_age :
6 print("yes,you are right")
7 break
8 elif age>_age :
9 print("{ages} is too big,think smaller!".format(ages=age))
10 else :
11 print("{ages} is too small,think bigger!".format(ages=age))
12 count+= 1
13 if count==3:
14 continue_confirm=input("will you go on?")
15 if continue_confirm=="y" :
16 count=0
17 else:
18 print("ok,you have tried too much")
- for循环
1 for i in range(1,10,3) : 2 print (i)

浙公网安备 33010602011771号