码迷,mamicode.com
首页 > 编程语言 > 详细

Python之基础2

时间:2016-08-20 14:29:20      阅读:250      评论:0      收藏:0      [点我收藏+]

标签:

1.Python2 还是 Python3 ?

py2.7是2.x系列的最后一个版本,已经停止开发,不再增加新功能。2020年终止支持。

所有的最新的标准库的更新改进,只会在3.x的版本里出现。

龟叔决定清理Python2.x ,并且不再兼容旧版本。 最大的一个改变就是使用Unicode作为默认编码。Pyhton2.x中直接写中文会报错,Python3中可以直接写中文了。

从开源项目看,支持py3的比例已经大大提高,知名的项目一般都支持py2.7和py3+。

py3比py2更规范统一、去掉了没必要的关键字

Python3.x还在持续改进

 

2.字符编码

  在python2.x中默认编码==Assic码,如果需要支持中文

    #!-*- coding:utf-8 -*-

    #coding:utf-8

  在python3.x中默认编码==unicode直接支持中文

  下面来详细写一下字符编码

在计算机发展之初,人机交互使用的是Assic编码,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256-1,所以,ASCII码最多只能表示 255 个符号

支持中文的第一张表是GB2312(1980,6700+),之后扩展到 gbk1.0(1995,20000),Gb18030(2000,27000)

unicode万国码出现,为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,2 **16 = 65536存一个字符统一占用2字节

UTF-8=是unicode的扩展集,使用可变长的字符编码集,即原来英文字符依旧占8位一字节,欧洲语言占用2字节,亚洲语言占用3字节

 

3.用户输入

name = input("Your name : ")
print("hello",name)

 执行一下:
c:\test>python input.py
Your name : miao
hello miao

用户输入的数据类型默认为string,如果执行以下程序

death_age=100
age = input("Your age : ")print("You can live for ",death_age-age,"years")

 

会报错如下:
c:\test>python input.py
Your age : 1
Traceback (most recent call last):
  File "input.py", line 3, in <module>
    print("You can live for ",death_age-age,"years")
TypeError: unsupported operand type(s) for -: ‘int‘ and ‘str‘

c:\test>

需要强制转换一下数据类型

death_age=100
age = int(input("Your age : "))
print("You can live for ",death_age-age,"years")

 

即可成功执行
c:\test>python input.py
Your age : 1
You can live for  99 years

输入密码时,如果想要不可见,需要利用getpass 模块中的 getpass方法

 

 

Python之基础2

标签:

原文地址:http://www.cnblogs.com/chunli/p/5790230.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!