Python基础之 二
字符编码:
二进制记录:128 64 32 16 8 4 2 1
1 1 1 1 1 1 1 1 = 8位
ascii 编码:占1个字节8位,只能表示256个符号,主要用于显示英语和其他西欧语言。
gb2312编码:占用第一字节剩余的128位+扩展,发布1980年。
gbk编码:发布1995年,兼容gb2312
gb18030:发布2000年,兼容gbk,gb2312,
unicode编码:统一代表所有国家的字符和符号(统一万国码),占用2个字节。2**16=65536。问题是ascii出现也占用2个字节问题。
UTF-8:可变长的编码字符集,解决unicode的问题。(存英文以ascii存储1个字节,存汉字以unicode存储,但是会占用3个字节)
全部向下兼容(utf-8 到 ascii)。
python3默认字符集utf-8. python2 默认字符集ascii
用户交互:
python3中的input交互 和 python2中的raw_input 功能一样。
name = input('name:') #用户输入进行交互
age = int(input('age:'))
job = input('job:')
salary = input('salary:')
info = '''
-------------info of %s--------------
Name: %s
Age: %d
Job: %s
Salary:%s
--------------end--------------------
''' % (name,name,age,job,salary) #第一种格式化输出
info2 = '''
-------------info of {_name}--------------
Name: {_name}
Age: {_age}
Job: {_job}
Salary:{_Salary}
--------------end--------------------
'''.format(_name=name,
_age=age,
_job=job,
_Salary=salary) #第二种格式化输出
info3 = '''
-------------info of {0}--------------
Name: {0}
Age: {1}
Job: {2}
Salary:{3}
--------------end--------------------
'''.format(name,age,job,salary) #第三种格式化输出
print (info)
print (info2)
print (info3)
注意:不建议字符串用“+”加号拼接,因为会另外占用内存,浪费资源。特殊情况下可以使用。
条件判断:
语法:if 条件:
执行语句
elif 条件:
执行语句
else:
执行语句
举例:
#getpass模块支持输入密码时加密不可见
import getpass _name = 'jeck'
_pass = 'abc123'
username = input('name:')
# passwd = getpass.getpass('password:') #由于在pycharm中无法使用此功能,所以注释掉。
passwd = input('password:') if _name == username and _pass == passwd:
print ('Welcome user {_name} login...'.format(_name=username))
else:
print ('Inviled loging')
while 循环:即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务.
基本语法: 当条件判断为真时执行语句,为假时退出循环
while 条件判断:
执行语句
else: #可选
执行语句
举例:
age_of_Jeck = 38
'''
#方法1
count = 0
while count < 3: #判断小于3执行下面代码
age = int(input('please input Jeck Age:'))
if age == age_of_Jeck:
print ('Yes ,Jeck age to:%d' % age)
break #符合跳出循环,不执行else语句了
elif age > age_of_Jeck:
print ('Think small')
else:
print ('Think bigger')
count += 1 #计数加1
else: #条件执行完毕,运行如下代码
print ('sorry,too many,exit!')
'''
#方法2
count = 0
while count < 3:
age = int(input('please input Jeck Age:'))
if age == age_of_Jeck:
print ('Yes ,Jeck age to:%d' % age)
break
elif age > age_of_Jeck:
print ('Think small')
else:
print ('Think bigger')
count += 1
if count == 3: #当计数满3次,重新确认是否继续。
continue_confirm = input('do you want to keep gressing...?')
if continue_confirm != 'n':
count = 0
else:
print ('input error , well exit')
for 循环:可以遍历任何序列的项目,如一个列表或者一个字符串。
基本语法:
for iterating_var in sequence:
执行语句
else: #可选
执行语句
举例:
age_of_Jeck = 38 for i in range(3):
age = int(input('please input Jeck Age:'))
if age == age_of_Jeck:
print ('Yes ,Jeck age to:%d' % age)
break
elif age > age_of_Jeck:
print ('Think small')
else:
print ('Think bigger')
else:
print ('sorry,too many,exit!')
Python基础之 二的更多相关文章
- Python 基础语法(二)
Python 基础语法(二) --------------------------------------------接 Python 基础语法(一) ------------------------ ...
- python基础知识(二)
python基础知识(二) 字符串格式化 格式: % 类型 ---- > ' %类型 ' %(数据) %s 字符串 print(' %s is boy'%('tom')) ----> ...
- Python基础学习二
Python基础学习二 1.编码 utf-8编码:自动将英文保存为1个字符,中文3个字符.ASCll编码被囊括在内. unicode:将所有字符保存为2给字符,容纳了世界上所有的编码. 2.字符串内置 ...
- Python之路:Python 基础(二)
一.作用域 对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用. if 1==1: name = 'lenliu' print name 下面的结论对吗?(对) 外层变量,可以被 ...
- Python基础篇(二)_基本数据类型
Python基础篇——基本数据类型 数字类型:整数类型.浮点数类型.复数类型 整数类型:4种进制表示形式:十进制.二进制.八进制.十六进制,默认采用十进制,其他进制需要增加引导符号 进制种类 引导符号 ...
- python基础(二)-------数据类型
python开发基础篇(二)数据类型 python数据类型有: 1.数字 1.只能存放一个值 2.一经定义,不可更改 3.直接访问 主要的分类为:整型,长整型,(python2有长整型的概念Pytho ...
- 第八章:Python基础の面向对象(二)
本課主題 面向对象的多态 面向对象的成员 成员修饰符 特殊成员 面向对象其他应用 异常处理 设计模式与单例模式 面向对象的多态 指定参数类型只是多态的一种表现 另外一种是允许自己类型和自己的子类型(典 ...
- Python 基础【二】 上
一.python语言分类 1. C python c语言的python版本 官方推荐 使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行 ...
- Bigger-Mai 养成计划,Python基础巩固二
模块初识1.标准库2.第三方库import sys sys.path #自己的本文件名不可为sys.py#输出模块存储的环境变量sys.argv #打印脚本的相对路径sys.argv[2] #取第二个 ...
- python基础介绍二
一.python种类 1.1 Cpython python官方版本,使用c语言实现,运行机制:先编译,py(源码文件)->pyc(字节码文件),最终执行时先将字节码转换成机器码,然后交给cpu执 ...
随机推荐
- Oracle中默认创建的表
安装Oracle数据库后,会自动创建几个表.分别是emp.dept.bonus(也有可能不一样),这些表都在scott账户中.
- 关于线程间操作无效: 从不是创建控件“xx”的线程访问它,错误解决方法(自定义委托和系统委托Action或Func解决)
这是一个线程不安全的问题.跨线程操作问题. 比如我们需要在线程中改变textbox的文本,textbox的name是txtShowMsg 第一种方法(不推荐使用) 在窗体构造函数中写Control.C ...
- Android学习笔记(八) CheckBox和RadioGroup
一.CheckBox 1.CheckBox的常用方法: boolean isChecked() :返回当前CheckBox的选中状态 void setChecked(boolean isChecked ...
- iOS Programming UIGestureRecognizer and UIMenuController
iOS Programming UIGestureRecognizer and UIMenuController A UIGestureRecognizer intercepts touches ...
- vue2.0排序应该注意的问题
在computed里新声明了一个对象sortItems,如果不重新声明会污染原来的数据源,这是Vue不允许的,所以你要重新声明一个对象. 如果不重新声明报错: <!DOCTYPE html> ...
- 关于js中使用close方法无法关闭firefox浏览器
今天遇到一个问题就是在js中使用window.close()方法无法关闭Firefox: 浏览器版本: firefox
- laravel jwt 做API 退出登录(注销) 该怎么弄? 如何让token失效
laravel jwt 做API 退出登录(注销) 该怎么弄? 如何让token失效 php框架 laravel 2.1k 次浏览 问题对人有帮助,内容完整,我也想知道答案0问题没有实际价值,缺少关键 ...
- scrapy 的分页爬取 CrawlSpider
1.创建scrapy工程:scrapy startproject projectName 2.创建爬虫文件:scrapy genspider -t crawl spiderName www.xxx.c ...
- hibernate cascade属性
cascade属性是存在于set标签中,用来做级联删除和保存. 它的值有以下几种: 1)默认值是none,不做级联动作: 2)save-update:级联保存 3)delete:级联删除 4)all: ...
- zTree 点击文字 勾选check
callback: { onClick:function(event, treeId, treeNode){ console.info("onClick") var treeObj ...