python 基础 Two day
1.格式化输出
%s 字符串
%d 数字
%% 转义 %
%f 小数
现在有以下需求,让用户输入name, age, job,hobby 然后输出如下所示:
------------ info of Alex Li ----------Name : Alex Li Age : 22 job : Teacher Hobbie: girl ------------- end ----------------
要怎么实现这些代码呢?
name = input("Name:")
age = input("Age:")
job = input("Job:")
hobby = input("Hobbie:")
info = ''' ------------ info of %s ----------- #这里的每个%s就是一个占位符,本行的代表 后面拓号里的 name
Name : %s #代表 name
Age : %s #代表 age
job : %s #代表 job
Hobbie: %s #代表 hobbie ------------- end ----------------''' % (name,name,age,job,hobbie) # 这行的 % 号就是 把前面的字符串 与拓号 后面的 变量 关联起来
print(info)
%s就是代表字符串占位符,除此之外,还有%d, 是数字占位符, 如果把上面的age后面的换成%d,就代表你 必须只能输入数字啦 这时对应的数据必须是int类型. 否则程序会报错
使用时,需要类型转换.
int(str) # 字符串转换成int str(int) # int转换成字符串
还有一种:
制作趣味模板程序需求:等待⽤户输⼊名字、地点、爱好,根据⽤户的名字和爱好进⾏任意现实 如:敬爱可亲的xxx,最喜欢在xxx地⽅⼲xxx.
name=input("请输入您的姓名:")
place=input("请输入您的位置:")
hobby=input("请输入您的爱好:")
print=("敬爱可亲的%s,最喜欢在%s地方干%s" % (name,place,hobby))
类似这样的操作在后面还有很多
如果, 你不想转换. 觉着转换很麻烦. 也可以全部都用%s. 因为任何东西都可以直接转换成字符串--> 仅 限%s
现在又来新问题了. 如果想输出:
我叫xxx, 今年xx岁了,我们已经学习了2%的python基础了
这里的问题出在哪里呢? 没错2%, 在字符串中如果使用了%s这样的占位符. 那么所有的%都将变成占位符. 我们的2%也变成了占 位符. 而"%的"是不存在的, 这里我们需要使用%%来表示字符串中的%.
注意: 如果你的字符串中没有使用过%s,%d站位. 那么不需要考虑这么多. 该%就%.没毛病老铁.
print("我叫%s, 今年22岁了, 学习python2%%了" % '王尼玛') # 有%占位符
print("我叫王尼玛, 今年22岁, 已经凉凉了100%了") # 没有占位符
2. 运算符
// 整除
%计算余数
** 求次幂
a +=b => a = a + b
and 和,并且;左右两端必须同时为真(True) 结果才能是真
or 或,或者;左右两端有一个是真,结果就是真
not 取反. 非真既假,非假既真
运算顺序 (先算的永远是括号)
() => not => and => or
同样的运算符 从左往右推.
比如: print(> and < or > ) 这就需要 得出and 以后 再进行 or
### or 如果是第一位 非0 输出第一位 如果是 0 则输入第二位
### and 如果第一位是非0 输出第二位
and 写第一位
非0 后面那位
or 后面一位
非0 写第一位
3. 初识编码
ASCII 8bit 1byte
GBK 16bit 2byte
UNICODE 32bit 4 byte
UTF-8 最少8位 1byte 中文24bit 3byte
bit 表示 位 byte 表示 字节
计算机:
早期. 计算机是美国发明的. 普及率不高, 一般只是在美国使用. 所以. 早的编码结构就是按照美国人的习惯来 编码的. 对应数字+字母+特殊字符一共也没多少. 所以就形成了早的编码ASCII码. 直到今天ASCII依然深深的 影响着我们.
ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母 的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其多只能用 8 位来表示(一个字节),即: 2**8 = 256,所以,ASCII码多只能表示 256 个符号。
随着计算机的发展. 以及普及率的提高. 流行到欧洲和亚洲. 这时ASCII码就不合适了. 比如: 中文汉字有几万个. 而 ASCII多也就256个位置. 所以ASCII不行了. 怎么办呢? 这时, 不同的国家就提出了不同的编码用来适用于各自 的语言环境. 比如, 中国的GBK, GB2312, BIG5, ISO-8859-1等等. 这时各个国家都可以使用计算机了.
GBK, 国标码占用2个字节. 对应ASCII码 GBK直接兼容. 因为计算机底层是用英文写的. 你不支持英文肯定不 行. 而英文已经使用了ASCII码. 所以GBK要兼容ASCII.
这里GBK国标码. 前面的ASCII码部分. 由于使用两个字节. 所以对于ASCII码而言. 前9位都是0
字母A: # ASCII 字母A: # 国标码
国标码的弊端: 只能中国用. 日本就垮了. 所以国标码不满足我们的使用. 这时提出了一个万国码Unicode. unicode一开始设计是每个字符两个字节. 设计完了. 发现我大中国汉字依然无法进行编码. 只能进行扩充. 扩充 成32位也就是4个字节. 这回够了. 但是. 问题来了. 中国字9万多. 而unicode可以表示40多亿. 根本用不了. 太浪 费了. 于是乎, 就提出了新的UTF编码.可变长度编码
UTF-8: 每个字符少占8位. 每个字符占用的字节数不定.根据文字内容进行具体编码. 比如. 英文. 就一个字节就 够了. 汉字占3个字节. 这时即满足了中文. 也满足了节约. 也是目前使用频率高的一种编码
UTF-16: 每个字符少占16位.
GBK: 每个字符占2个字节, 16位.
单位转换 :
8bit = 1byte 1024KB = 1MB 1024MB = 1GB 1024GB = 1TB 1024TB = 1PB 1024TB = 1EB 1024EB = 1ZB 1024ZB = 1YB 1024YB = 1NB 1024NB = 1DB 一般用到TB 就可以了, 剩下的可以了解一下
4. while...else...(补充的)
while 条件:
循环体
else: 循环在正常情况跳出之后会执行这里
index =
:
:
# break
pass
else:
print(index)
index = index+
else:print("你好")
注意: 如果循环是通过break退出的. 那么while后面的else将不会被执行, 只有在while条件判断是假的时候才会 执行这个else
pass: 不表示任何内容. 为了代码的完整性. 占位而已
5. in 和 not in
in可以帮我们判断"xxx"字符是否出现在了"xxxxx"字符中
not in 没有出现
比如:等待⽤户输⼊内容,检测⽤户输⼊内容中是否包含敏感字符?如果存在敏感字符提示“存在敏感字符请重新输⼊”,并允许⽤户重新输⼊并打印。敏感字符:“⼩粉嫩”
s=input("用户输入:")
while True:
if "小粉嫩" == s :
print("存在敏感字符")
else:
print("评论成功")
还有一种写法:
content = input("请输入你的评论")
if "苍老师" in content or '邱老师' in content:
print('你输入的内容不合法')
else: print("评论成功")
python 基础 Two day的更多相关文章
- python之最强王者(2)——python基础语法
背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...
- Python开发【第二篇】:Python基础知识
Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...
- Python小白的发展之路之Python基础(一)
Python基础部分1: 1.Python简介 2.Python 2 or 3,两者的主要区别 3.Python解释器 4.安装Python 5.第一个Python程序 Hello World 6.P ...
- Python之路3【第一篇】Python基础
本节内容 Python简介 Python安装 第一个Python程序 编程语言的分类 Python简介 1.Python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum) ...
- 进击的Python【第三章】:Python基础(三)
Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...
- 进击的Python【第二章】:Python基础(二)
Python基础(二) 本章内容 数据类型 数据运算 列表与元组的基本操作 字典的基本操作 字符编码与转码 模块初探 练习:购物车程序 一.数据类型 Python有五个标准的数据类型: Numbers ...
- Python之路【第一篇】python基础
一.python开发 1.开发: 1)高级语言:python .Java .PHP. C# Go ruby c++ ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...
- python基础之day1
Python 简介 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python为我们提供了非常完善的基础代码库,覆盖了 ...
- python基础之文件读写
python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使用os模块的一些方法如下: 得到 ...
- python基础之编码问题
python基础之编码问题 本节内容 字符串编码问题由来 字符串编码解决方案 1.字符串编码问题由来 由于字符串编码是从ascii--->unicode--->utf-8(utf-16和u ...
随机推荐
- Information Retrieval 倒排索引 学习笔记
一,问题描述 在Shakespeare文集(有很多文档Document)中,寻找哪个文档包含了单词“Brutus”和"Caesar",且不包含"Calpurnia&quo ...
- MySQL 数据库应用程序编程
普通用户使用客户端应用程序(Client Application)和服务器程序(Server Application)通信以取得服务, 而服务器程序通常要和数据库服务器通信以取得数据存取服务, 这时就 ...
- SCTP接口模型
一.接口模型 (1)SCTP套接字分为:一到一套接字和一到多套接字: (2)一到一套接字对应一个单独的SCTP关联(一个SCTP关联是两个系统之间的一个连接,不过可能由于多宿原因而在每个断点设计不止 ...
- Lua Doc生成工具
Luadoc http://keplerproject.github.io/luadoc/ Overview LuaDoc is a documentation generator tool for ...
- MongoDB初探-基本语句和数据结构
MySQL: 1 金老板 18 15512351234 2 小哪吒 20 15312341234 3 Alex 73 15512341234 MongoDB: { { id : 1, name:金老板 ...
- Kaldi阅读并更改代码
Common utilities base/kaldi-common.h 几乎所有Kaldi程序都会include该头文件. 该头文件include了一些其他位于base/目录的头文件,主要提供: 错 ...
- shell实现带颜色输出的进度条
1.基础版 #!/bin/bash b='' ;$i<=;i+=)) do printf "执行进度 :[%-50s]%d%%\r" $b $i sleep 0.001 b= ...
- 模拟用户登录(获取cookie/实例化session)
第一种方法:通过本地浏览器保存的cookie进行登陆 url1 = 'https://passport.cnblogs.com/user/signin?ReturnUrl=https%3A%2F%2F ...
- python 的基础 学习 第六天 基础数据类型的操作方法 字典
1,字典 字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据.python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且ke ...
- BZOJ4921「Lydsy1706月赛」互质序列
吐槽一下BZOJ没有C++11 题还是不难的 BZOJ 4921 题意 在长度为$ n$的数列中去掉非空的连续一段并保证剩下数字不少于$ 2$ 求合法的所有方案中剩下数字的最大公约数的总和 $Sol ...