标签:移植 执行 二进制 广告 oop 可扩展性 str pre ret
写在最前面:在IT圈混迹这么多年,没有掌握一门开发语言着实让人汗颜……
于是选择再出发,阴差阳错的选择了Python,熟练掌握和使用Python来开发应用和网页,作为年度目标
写在前面:1) Python的最基础—二进制与字符
2) Hello World!
3) 用户交互,输入用户名密码— 控制语句(缩进格式) If else(If elif),Whlie,For
正文:
1.1 二进制
1.2 字符发展史
ASCII-->GB2312-->GB18030-->Unicode-->UTF-8
一般中文都使用UTF-8
1.3 Python简介及应用
1.3.1 简介
python是一门动态解释性的强类型定义语言
动态语言和静态语言
通常我们所说的动态语言、静态语言是指动态类型语言和静态类型语言。
(1)动态类型语言:动态类型语言是指在运行期间才去做数据类型检查的语言,也就是说,在用动态类型的语言编程时,永远也不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。Python和Ruby就是一种典型的动态类型语言,其他的各种脚本语言如VBScript也多少属于动态类型语言。
(2)静态类型语言:静态类型语言与动态类型语言刚好相反,它的数据类型是在编译其间检查的,也就是说在写程序时要声明所有变量的数据类型,C/C++是静态类型语言的典型代表,其他的静态类型语言还有C#、JAVA等。
1.3.2 应用
谷歌:Google App Engine 、code.google.com 、Google earth 、谷歌爬虫、Google广告等项目都在大量使用Python开发
1.3.3 优缺点
Python的定位是“优雅”、“明确”、“简单”,所以Python程序看上去总是简单易懂,初学者学Python,不但入门容易,而且将来深入下去,可以编写那些非常非常复杂的程序。
开发效率非常高。可移植性—由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工 作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就几乎可以在市场上所有的系统平台上运行。可扩展性————如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。可嵌入性————你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。
速度慢,代码不能加密,线程不能利用多CPU问题,这是Python被人诟病最多的一个缺点,GIL即全局解释器锁(Global Interpreter Lock),是计算机程序设计语言解释器用于同步线程的工具,使得任何时刻仅有一个线程在执行,Python的线程是操作系统的原生线程。在Linux上为pthread,在Windows上为Win thread,完全由操作系统调度线程的执行。一个python解释器进程内有一条主线程,以及多条用户程序的执行线程。即使在多核CPU平台上,由于GIL的存在,所以禁止多线程的并行执行。关于这个问题的折衷解决方法,我们在以后线程和进程章节里再进行详细探讨。
1.4 Hello World!
# Hello World!
print("Hello World!")
1.5 定义变量
#定义变量1
name ="wonderfeng"
print("My name is ",name)
#定义变量2,寻找name存储的值,而非指针
name2 = name
name ="Harold"
print(name,"is",name2)
# 用户交互,格式化输出
msg = input("name:")
name = input("name:")
age = input("age:")
job = input("job:")
salary = input("salary:")
# 不可取,将在内存中开辟多块区域
info =‘‘‘
-------info of ‘‘‘+name+ ‘‘‘-----------
Name:‘‘‘+name+‘‘‘
Age:‘‘‘+age+‘‘‘
Job:‘‘‘+job+‘‘‘
Salary:‘‘‘+salary+‘‘‘
-----------------------------
‘‘‘
print(info)
info2 = ‘‘‘
--------info of %s--------
Name:%s
Age:%s
Job:%s
Salary:%s
--------------------------
‘‘‘%(name,name,age,job,salary)
print(info2)
info3 =‘‘‘
--------info of {name_1}--------
Name:{name_1}
Age:{Age_1}
Job:{Job_1}
Salary:{Salary_1}
--------------------------------
‘‘‘ .format(name_1=name,
Age_1=age,
Job_1=job,
Salary_1=salary)
print(info3)
info4 =‘‘‘
--------info of {0}--------
Name:{0}
Age:{1}
Job:{2}
Salary:{3}
--------------------------------
‘‘‘ .format(name,age,job,salary)
print(info4)
1.6 控制语句(If while for)
# if 判断
user = ‘Harold‘
pass_name = ‘123123‘
username = input("Username:")
password = input("Password:")
# pass_word = getpass.getpass("Pass_word:")
if username == user and password == pass_name:
print("Welcome {name} Login..." .format(name=username))
else:
print("Access Denied")
# 年龄判断1
Age_of_Harold = 30
guess_age = int(input("Pls input age of Harold:"))
# 如果没有输入会提示报错,这里需要再加段控制代码
if guess_age == Age_of_Harold:
print("You are Right!")
elif guess_age > Age_of_Harold:
print("Try smaller")
else:
print("Try bigger")
# 年龄判断2,次数限制
Age_of_Harold_2 = 30
count = 0
while count < 3:
guess_age_2 = int(input("Pls input age of Harold_2:"))
if guess_age_2 == Age_of_Harold_2:
print("You are Right!")
break # 跳出循环
# continue # 跳出本次循环
elif guess_age_2 > Age_of_Harold_2:
print("Try smaller")
else:
print("Try bigger")
count += 1
else:
print("You have tried too many times...")
‘‘‘
# For 循环 与While相同,都可以使用Else,range(),循环从0开始
for i in range(3):
print("loop", i)
else:
print("exit")
# 步长
for i in range(0, 10, 2): # range 从0到10,步长为2
print("loop", i)
for i in range(0 ,10):
if i < 5:
print("loop", i)
else:
continue
print("这是continue") #如果缩进,是else中的语句,continue后面将不执行,如果不缩进,与if并列,将执行
# 嵌套循环
for i in range(0,10):
print("这是第一层循环")
for j in range(0,10):
# print(j)
if j > 5:
# print(j)
break # 两种Print的效果不一样
‘‘‘
# 年龄判断3,次数限制,使用For循环
Age_of_Harold_3 = 30
for i in range(3):
guess_age_3 = int(input("Pls input age of Harold_3:"))
if guess_age_3 == Age_of_Harold_3:
print("You are Right!")
break # 跳出循环
# continue # 跳出本次循环
elif guess_age_3 > Age_of_Harold_3:
print("Try smaller")
else:
print("Try bigger")
else:
print("You have tried too many times...")
# 年龄判断4,次数限制,超过三次提示是否还需要输入,使用while,不能使用For
Age_of_Harold_4 = 30
i = 0
while i < 3:
guess_age_4 = int(input("Pls input age of Harold_4:"))
if guess_age_4 == Age_of_Harold_4:
print("You are Right!")
break # 跳出循环
# continue # 跳出本次循环
elif guess_age_4 > Age_of_Harold_4:
print("Try smaller")
else:
print("Try bigger")
i += 1
if i == 3:
input_confirm = input("重新输入?")
if input_confirm != ‘N‘:
# if input_confirm != ‘N‘or input_confirm != ‘n‘:
i = 0
else:
break
标签:移植 执行 二进制 广告 oop 可扩展性 str pre ret
原文地址:http://www.cnblogs.com/wonderfeng/p/6978657.html