标签:三方 简体 错误 原因 年龄 现在 基础上 gbk NPU
一、Pthon介绍
Pyhton的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆在阿姆斯特丹打发时间,决心开发一款新的脚本解释程序,作为ABC语言的一种继承
Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等。
目前Python的主要应用领域:
Python在一些公司的应用:
Python是一门什么样的语言?
编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快;
解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快的.
这是因为计算机不能直接认识并执行我们写的语句,它只能认识机器语言(是二进制的形式)
编译型
优点:编译器一般会有预编译的过程对代码进行优化。因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高。可以脱离语言环境独立运行。
缺点:编译之后如果需要修改就需要整个模块重新编译。编译的时候根据对应的运行环境生成机器码,不同的操作系统之间移植就会有问题,需要根据运行的操作系统环境编译不同的可执行文件。
解释型
优点:有良好的平台兼容性,在任何环境中都可以运行,前提是安装了解释器(虚拟机)。灵活,修改代码的时候直接修改就可以,可以快速部署,不用停机维护。
缺点:每次运行的时候都要解释一遍,性能上不如编译型语言。
Python的优缺点
优点:
缺点:
Python安装
windows:
下载安装包:https://www.python.org/downloads/
Linux:
无需安装,系统自带Python环境。(如果自带2.X版本请自行升级到3.X)
变量\字符编码
# Author:Aaron LI
name = ‘Aaron Li‘
print("My name is",name)
变量
上述代码声明了一个变量,其变量名为name,而变量name的值为:"Aaron Li"
变量的定义规则:
1.变量名只能是 字母、数字或下划线的任意组合
2.变量名的第一个字符不能是数字
3.一些关键字不能声明为变量名:
[‘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‘]
字符编码
Python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill)
ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256-1,所以,ASCII码最多只能表示 255 个符号
关于中文
为了处理汉字,程序员设计了用于简体中文的GB2312和用于繁体中文的big5。
GB2312(1980年)一共收录了7445个字符,包括6763个汉字和682个其它符号。汉字区的内码范围高字节从B0-F7,低字节从A1-FE,占用的码位是72*94=6768。其中有5个空位是D7FA-D7FE。
GB2312 支持的汉字太少。1995年的汉字扩展规范GBK1.0收录了21886个符号,它分为汉字区和图形符号区。汉字区包括21003个字符。2000年的 GB18030是取代GBK1.0的正式国家标准。该标准收录了27484个汉字,同时还收录了藏文、蒙文、维吾尔文等主要的少数民族文字。现在的PC平台必须支持GB18030,对嵌入式产品暂不作要求。所以手机、MP3一般只支持GB2312。
从ASCII、GB2312、GBK 到GB18030,这些编码方法是向下兼容的,即同一个字符在这些方案中总是有相同的编码,后面的标准支持更多的字符。在这些编码中,英文和中文可以统一地处理。区分中文编码的方法是高字节的最高位不为0。按照程序员的称呼,GB2312、GBK到GB18030都属于双字节字符集 (DBCS)。
有的中文Windows的缺省内码还是GBK,可以通过GB18030升级包升级到GB18030。不过GB18030相对GBK增加的字符,普通人是很难用到的,通常我们还是用GBK指代中文Windows内码。
显然ASCII码无法将世界上的各种文字和符号全部表示,所以,就需要新出一种可以代表所有字符和符号的编码,即:Unicode
Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536,
注:此处说的的是最少2个字节,可能更多
UTF-8,是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存...
所以,python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill)
注释
单行注释: #被注释内容
多行注释: """被注释内容""" 或者 ‘‘‘被注释内容‘‘‘
用户交互
# Author:Aaron LI
username = input("username:")
password = input("password:")
print (username,password)
字符串拼接
#namne = input("name")
#age = input("age")
#job = input("job")
#salary = input("salary")
#info = """
#---------- into of %s ---------
#name:%s
#age:%s
#job:%s
#salary%s
#""" % (namne,namne,age,job,salary) %占位符跟上边的变量拼接起来
#print(info)
# % DAY 1(10) 10:50处
#name = input("name")
#age = int(input("age"))
#job = input("job")
#salary = input("salary")
#info = """
# ---------- into of %s-----------------
# name:%s
# age:%d
# job:%s
# salary:%s
#""" % (name,name,age,job,salary)
#print (info)
#推崇用此方法
name = input("name")
age = input("age")
job = input("job")
salary = input("salary")
info = """
----------info of {_name} --------------
name:{_name}
age:{_age}
job:{_job}
salary:{_slary}
""" . format(_name=name,
_age=age,
_job=job,
_slary=salary)
print(info)
将密码设为密文输出
利用getpass模块
import getpass
username = input("username:")
password = input("password:")
print(username,password)
#在pycharm中无法输出测试
表达式 if......else
提示输入用户名和密码,验证用户名和密码
如果成功,则输出欢迎
如果错误,则输出,用户名和密码
# Author:Aaron LI
import getpass
_username = ‘lixiguang‘
_password = ‘abc123‘
username = input("username:")
password = input("password:")
if _username == username and _password == password:
print("Welcome user {name} login......".format(name=username))
else:
print("Invalid username or password!")
猜年龄
在程序中预先设定好年龄,启动程序后让用户猜测,根据用户的输入提示输入的正确与否,如果错误则给出提示
# Author:Aaron LI
age_of_lxg = 25
guess_age = int(input("guess age:"))
if age_of_lxg == guess_age:
print("Input correct!")
elif age_of_lxg > guess_age:
print("The input digit is too large")
else:
print("The input numbers are too small")
表达式for循环
for i in range(0,15):
print("Aaron",i)
for i in range(0,19,2):
print("loop",i) #2 每执行一个跳一个 (步长)
# Author:Aaron LI
age_of_lxg = 28
for i in range(3):
guess_age = int(input("guess_age:") )
if guess_age == age_of_lxg:
print("yes,you got it.")
break
elif guess_age > age_of_lxg:
print("thine smaller....")
else:
print("think bigger!")
else:
print("you have tried too times..")
表达式while循环
count = 0
while True:
print("count:",count)
count +=1 #count = count +1
# Author:Aaron LI
age_of_lxg = 28
count = 0
while count < 3:
guess_age = int(input("guess age:"))
if guess_age == age_of_lxg:
print("yes,you got it.")
break
elif guess_age > age_of_lxg:
print("think smaller...")
else:
print("think bigger...")
count +=1
if count == 3:
coutine_confim = input("do you want to keep guessing.....?")
if coutine_confim != ‘n‘:
count = 0
break和continue
count = 0
while True:
print("count:",count)
count +=1 #count = count +1
if count == 1001:
break #满足条件结束整个循环
for i in range(0,10):
if i <3:
print("loop",i)
else :
continue #跳出本次循环,进入下次循环
print("haha.....")
标签:三方 简体 错误 原因 年龄 现在 基础上 gbk NPU
原文地址:https://www.cnblogs.com/ltn26/p/10981336.html