Python基础 整形、布尔值、if条件判断、while循环、运算符、格式化输出
1,计算机基础。
2,python历史。
宏观上:python2 与 python3 区别:
python2 源码不标准,混乱,重复代码太多,
python3 统一 标准,去除重复代码。
3,python的环境。
编译型:一次性将所有程序编译成二进制文件。
缺点:开发效率低,不能跨平台。
优点:运行速度快。
:C,C++等等。
解释型:当程序执行时,一行一行的解释。
优点:开发效率高,可以跨平台。
缺点:运行速度慢。
:python ,php,等等。
4,python的发展。
5,python种类。
运行第一个py文件:
python3x :python 文件路径 回车
python2x :python2 文件路径 回车
python2 python3 区别:python2默认编码方式是ascii码
解决方式:在文件的首行:#-*- encoding:utf-8 -*-
python3 默认编码方式utf-8
6,变量。
变量:就是将一些运算的中间结果暂存到内存中,以便后续代码调用。
1,必须由数字,字母,下划线任意组合,且不能数字开头。
2,不能是python中的关键字。
['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']
3,变量具有可描述性。
4,不能是中文。
7,常量。
一直不变的量。 π
BIR_OF_CHINA = 1949
8,注释。
方便自己方便他人理解代码。
单行注释:#
多行注释:'''被注释内容''' """被注释内容"""
9,用户交互。input
1,等待输入,
2,将你输入的内容赋值给了前面变量。
3,input出来的数据类型全部是str
10,基础数据类型初始。
数字:int 12,3,45
+ - * / **
% 取余数
print(**,type('**'))
字符串转化成数字:int(str) 条件:str必须是数字组成的。
数字转化成字符串:str(int)
字符串:str,python当中凡是用引号引起来的都是字符串。
可相加:字符串的拼接。
可相乘:str * int
bool:布尔值。 True False。
11,if判断语法。(四种结构)
①if 条件:
结果
②if条件:
结果1
else:
结果2
(if条件成立就输出,条件不成立执行else。)
③if条件1:
结果1
elif条件2:
结果2
...
...
elif条件n:
结果n
(只会输出一种结果)
④if条件1:
结果1
elif条件2:
结果2
. . .
. . .
else:
结果n
重点:
if 的嵌套:
code = input('请输入验证码:')
username = input('请输入用户名:')
password = input('请输入密码:')
if code == 'qwe3':
if username == 'alex' and password == '':
print('登陆成功')
else:
print('用户名或者密码错误')
else:
print('验证码错误')
12,while。
while 条件:
循环体
无限循环。while 1:
终止循环:1,改变条件,使其不成立。
2,break
3,调用系统命令:quit() exit() (不建议使用)
while 与 break 、 continue 之间的关系
break:循环中遇到break 直接退出循环:
print(111)
while True:
print(222)
print(333)
break
print(555)
print(666)
continue: 结束本次循环,继续下一次循环
while True:
print(111)
print(222)
continue
print(333)
练习题:
练习一:输出 1-100 内的所有奇数
count = 0
while count <= 100:
if count%2 == 1:
print(count)
count += 1
练习二:输出 1-100 内的所有奇数
count = 0
while count <= 100:
if count%2 == 0:
print(count)
count += 1
练习三:求1-2+3-4+5 ... 99所有数的和
count = 0
j = 0
while count <= 100:
if count%2 == 1:
j = j+count
else:
j = j-count
count+= 1
print(j)
练习四:用户登录菜单,可以有三次机会。
count = 0
user = 'tom'#字符串
password = '' while count < 3 :
user1 = input('please enter your name:')
password1 = input('please enter your password:')
if user1 == user and password1 == password :
print("welcome, user")
break
else:
print('输入错误,你一共有三次机会输入')
count += 1
print('程序退出')
算数运算符arithmetic operator:
+ - * / %
% : 取余,取模。取的是第一个操作数和第二个操作数除法的余数。整除结果为0.
10 % 3 1
10 % 5 0
10 % -3 -1
10 % -5 ?
-10%3 ?
% 真正操作步骤:
- 用第一个数除以第二个数,得到最相近的两个商。取最小的数。
- 用第一个数减去第二个数和第一步的到的数的乘积。
赋值运算符assignment operator:
基本的赋值运算符:=
扩展的赋值运算符:
+= -= *= /= %=
例如:X += Y -> X = X + Y
比较运算符compare operator:
<= >= == !=
比较运算符的结果始终是布尔类型。
逻辑运算符logic operator:
python中只有三个逻辑运算符:
and or not
逻辑运算符的结果到底是什么类型???
结果取决于两个操作数的类型!!!
针对and操作:第一个操作数如果是可以转成False的话,那么第一个操作数的值,就是整个逻辑表达式的值。
如果第一个操作数可以转成True,第二个操作数的值就是整个表达式的值。
针对or操作:第一个操作数如果是可以转成False的话,第二个操作数的值就是整个表达式的值。
如果第一个操作数可以转成True, 第一个操作数的值,就是整个逻辑表达式的值。
成员运算符:
in not in
身份运算符:
is not is (判断内存地址是否一样)
格式化输出:
第一种:占位符% %d,%s,%i,%t
1 name = input('please input your name:')
2 age = input('please input your age:')
3 sex = input('please input your sex:')
4 hobby = input('please input your hobby:')
5 msg = '''----- info of %s -----
6 Name : %s
7 Age : %s
8 Sex : %s
9 Hobby :%s
10 ------ end ------'''%(name,name,age,sex,hobby)
11 print(msg)
1 msg = '我叫%s,我今年%s岁,我的学习进度是0.5%%' % ('tom',22)
2 print(msg)
第二种:format
①:
1 s = '我叫{},今年{},性别{}'
2 s11 = s.format('美龙', '23', 'man')
3 print(s11)
②
1 s = '我叫{0},今年{1},性别{2},我依然叫{0}{0}{0}'
2 s11 = s.format('美龙', '23', 'man')
3 print(s11)
③
s = '我叫{name},今年{age},性别{sex},我依然叫{name}'
s11 = s.format(name='美龙', sex='man', age='23')
print(s11)
第三种:
1 temp = "tom"
2 str1 = f"i am {'Zc'}"
3 str2 = f"i am {temp}"
4 print(str1)
5 print(str2)
结果
i am Zc
i am tom
最新文章
- react-native-vector-icons的简单使用,图片,按钮,标签视图,导航条
- 恢复 git reset -hard 的误操作
- PHP调用java的class
- 分析 ";ADO"; ";ADODB"; ";ADODC"; 之间的区别与联系
- win7关机命令
- PHP随机生成广告图片的实例 代码
- SQL2008-c:\PROGRA~1\COMMON~1\System\OLEDB~1\oledb32.dll出错找不到指定的模块
- 奇怪的JS
- 配置hive元数据库mysql时候出现 Unable to find the JDBC database jar on host : master
- 高质量程序设计指南C/C++语言——内存管理
- hadoop、spark/storm等大数据相关视频资料汇总下载
- 13-7-5 android Tabhost功能实现
- 【洛谷1131】【ZJOI2007】时态同步
- ●SPOJ 7258 Lexicographical Substring Search
- paloalto防火墙接口使用方法及实例
- koa入门
- List与逗号分隔的字符串相互转换
- 【转】BAT批处理中的字符串处理详解(字符串截取)
- mysql 查询 所有 父节点 单表
- .NET高级代码审计(第三课)Fastjson反序列化漏洞
热门文章
- P3240 [HNOI2015]实验比较 树形DP
- C++基础学习1: C++布尔类型
- [BOI2007]Sequence 序列问题 BZOJ1345
- servlet验证账号密码
- Luogu P5122 [USACO18DEC]Fine Dining 最短路
- POJ1185炮兵阵地(状态压缩DP)
- Lucene.Net和盘古分词应用
- 1-----Scrapy框架整体的一个了解
- nginx -s reload ";/alidata/server/nginx/logs/nginx.pid"; failed
- VMware Workstation 12.5.9 Pro虚拟机软件中文版