python从入门到入坟
一:基础知识
作者:Gido van Rossum
不支持windows XP
1:面对对象,解释性,程序设计语言
2:一定要注意标点符号必须是英文,不然会报错
1:注释规则
1:单行注释
#注释内容
2:多行注释
"""注释内容"""
或者
'''
注释内容
'''
或者
"""
注释内容
"""
2 :Python文件行首建议加入指明编码类型
#coding:utf-8
3:代码缩进规范
Python 使用代码缩进和冒号:区分代码层次
Python对于代码缩进要求十分严格,同一级别的代码缩进量必须一致,建议代码缩进量全篇为4个空格
4:变量
系统保留字
在IDLE里执行以下命令获取系统保留字
import keyword
keyword.kwilst
Python支持汉字作为标识符
我的名字="xiaozhen"
print(我的名字)
在Python语言中可以使用内置函数type()获取变量类型
print(type(变量))
5:数据类型
整数(int)
即整数数值,没有小数部分,在Python中,整数包括正整数,负整数和0
浮点数(float)
浮点由整数部分和小数部分组成
字符串
字符串就是连续的字符序列,可使用单引号(必须在一行)双引号(必须在一行)三引号(可以分布多行)
Python在字符串里支持转义符号
符号 | 作用 |
---|---|
\ | 续行符 |
\n | 换行符 |
\0 | 空 |
\t | 水平制表符,用于横向跳到下一制表位 |
" | 双引号 |
’ | 单引号 |
\ | 一个反斜杠 |
\f | 换页 |
\0dd | 八位制数,dd代表的字符,如\012代表换行 |
\xhh | 十六进制数,hh代表字符,如\x0a代表换行 |
布尔类型
布尔类型只要表示真或假的值。在Python中,True和False被解释为布尔值。在Python中的布尔值可以转化为数值,其中True表示1,而False表示0
6:数据类型转换
在Python中,提供了函数进行数据类型的转换
函数 | 作用 |
---|---|
int(x) | 将x转换为整数类型 |
float(x) | 将x转换为浮点数类型 |
complex(real[,imag]) | 创建一个复数 |
str(x) | 将x转为字符串 |
repr(x) | 将x转换为表达式字符串 |
eval(str) | 计算在字符串中的有效Python表达式,并返回一个对象 |
chr(x) | 将整数x转换为一个字符 |
ord(x) | 将一个字符x转换为它对应的整数值 |
hex(x) | 将一个整数x转换为一个十六进制的字符串 |
oct(x) | 将一个整数x转换为一个八进制的字符串 |
7:基本的输入和输出
在Python使用内置函数input()可以接收用户的键盘输入
bianlian=input("提示文字")
bianlian是保存输入内容的变量,Python3.0使用input函数它默认保存为字符串类型,可以使用类型转换
bianlian=int(input("请输入内容:"))
Python文件举例
sgao=int(input("请输入您的身高:"))
tiz=int(input("请输入您的体重:"))
#计算bmi值
bmi = tiz /(sgao*sgao)
print("您的bmi指数为",bmi)
if bmi < 18.5:print("您的体重过轻")
if bmi >= 18.5 and bmi <24.9:print("您的体重正常")
if bmi >= 24.9 and bmi <29.9:print("体重过重")
if bmi >= 29.9:print("肥胖")
在Python使用·拿着函数print()将结果输出到屏幕上面
print(hello word)
二:运算符和表达式
1:运算符
运算符 | 说明 | 实例 | 结果 |
---|---|---|---|
+ | 加法 | 12.5+3.5 | 16.0 |
- | 减法 | 12.5-2.5 | 10.0 |
* | 乘法 | 7*3 | 21 |
/ | 除法 | 7/2 | 3.5 |
% | 求余 | 7%2 | 1 |
// | 取整数除 | 7//2 | 3 |
** | 幂 | 3**3 | 27 |
实例:计算平均分
#coding:utf-8
yw = int(input("请输入语文成绩:"))
sx = int(input("请输入数学成绩:"))
ey = int(input("请输入英语成绩:"))
pjf = (yw + sx + ey )/3
print("平均分是:"+str(pjf)+"分")
2:赋值运算符
赋值运算符主要用来给变量赋值
常用的赋值运算符
运算符 | 说明 | 举例 | 展开形式 |
---|---|---|---|
= | 简单的赋值运算 | x=y | x=y |
+= | 加赋值 | x+=y | x=x+y |
-= | 减赋值 | x-=y | x=x-y |
*= | 乘赋值 | x*=y | x=x*y |
/= | 除赋值 | x/=y | x=x/y |
%= | 取余数赋值 | x%=y | x=x%y |
**= | 幂赋值 | x**=y | x=x**y |
//= | 最整除赋值 | x//=y | x=x//y |
3:比较(关系)运算符
比较运算符,也叫关系运算符。用于对变量和表达式的结果进行大小,真假等比较。比较结果为真,返回True,比较结果为假,返回False。通常作为条件语句的判断依据
运算符 | 作用 | 举例 | 结果 |
---|---|---|---|
> | 大于 | ‘a’>‘b’ | False |
< | 小于 | 156<456 | True |
== | 等于 | ‘c’==‘c’ | True |
!= | 不等于 | "y’!=‘t’ | True |
>= | 大于等于 | 479>=423 | True |
<= | 小于等于 | 62.45<=45.5 | False1 |
实例:
python = 95
english = 92
c = 89
#输出三个变量的值
print("python = " + str(python) + "english=" + str(english) + "c=" + str(c) +"\n")
print("python < englist 的结果" + str(python < english))
print("python > englist 的结果" + str(python > english))
print("python == englist 的结果" + str(python == english))
print("python != englist 的结果" + str(python != english))
print("python <= englist 的结果" + str(python <= english))
print("python >= c 的结果" + str(python >= c))
返回结果
4:逻辑运算符
运算符 | 含义 | 用法 | 结合方向 |
---|---|---|---|
and | 逻辑与 | op1 and op2 | 左到右 |
or | 逻辑或 | op1 or op2 | 左到右 |
not | 逻辑非 | not op | 右到左 |
逻辑与and 左到右 前面的对则只需执行后面的
逻辑或or 左到右一个对则全对
逻辑非not 右到左将结果反义
实例:
print("商场正在打折,活动进行中.....")
xq = input("请输入中文星期(例:星期一):")
sj = int(input("请输入当前小时(0-23):"))
if (xq == "星期二" and (sj >= 17 and sj <= 21)) or (xq == "星期天" and (sj >= 12 and sj <= 23)):print("恭喜")
else:print("抱歉")
5:位运算符
5.1 “按位与”
按位与运算符是&,法则是两个操作数据的二进制表示,只有对应位都为1时,结果位才是1,否则为0
5.2 “按位或”
按位或运算符是|,法则是:两个操作数据的二进制表示,只有对应位都为0是,结果位才是1,否则为0
5.3“按位异或”
按位异或运算符^,运算法则是:当两个操作数的二进制表示相同(同时为1或0)时,结果为0,否则为1
5.4“按位取反”
按位取反也叫按位非运算,运算符为~。运算法则是:将操作数对应二进制的1修改为0,0修改为1
5.5左移位运算符<<
左移位运算符是将一个二进制操作数向左移动指定的位数,左边(高位端)溢出的位丢弃,右边(低位位)的空位有0补充。相当于乘2
5.6右移位运算符>>
右移位运算符是将一个二进制操作数向右移动指定的位数,右边(低位端)溢出的位丢弃,左边(高位位)的空位有1补充。相当于除2
6:运算符的优先级
优先级从上到下
类型 | 说明 |
---|---|
** | 幂 |
~,+,- | 取反,正号,负号 |
*,/,%,// | 算术运算符 |
+,- | 算术运算符 |
<<,>> | 位运算符的左移和右移 |
& | 位运算的按位与 |
^ | 位运算的按位异与 |
| | 位运算的按位或 |
<,<=,>,>=,!=,== | 比较运算符 |
7:条件表达式
如果要对两个数比较大小使用if
实例:
a = 10
b = 20
if a<b:r = a
else:r = b
或者
a = 10
b = 20
r = a if a < b else b
三:流程控制语句
1:if选择语句
if选择语句
if语句是是最简单的选择语句,使用用法是
if 表达式:语句块elif 表达式:语句块else:语句块
实例:判断年龄分级
nl = int(input("请输入您的年龄:"))if nl <= 18:#判断年龄是否小于等于18print("您的年龄还小哦,加油学习!")elif 18 < nl <= 30:#判断年龄是否在18到30的区间print("您参与努力奋斗的黄金年龄!")elif 30 < nl <= 50:#判断年龄是否在30到50的区间print("您现在参与人士的黄金阶段!")else:#年龄大于50print("最美不过夕阳红!")
pass 占位符
if语句的嵌套使用
语法(注意同级代码缩进):
if 表达式:if 表达式:语句块elif 表达式:语句块else:语句块elif 表达式:语句块else:语句块
2:循环语句
while循环
while是通过一个条件来控制是否重复执行循环体里的语句
语法:
while 条件表达式:循环体
扩展用法
break 跳出当前循环,进行下一条循环
continue 跳出所以循环
while 1: 表示无限循环(1=真True)
for循环
for循环是一个计次循环
语法:
for 迭代变量 in 对象:循环体
实例(计算1到100的累加):
print("计算1+2+3..+100的结果是:")
sum = 0
for i in range(101):sum += i
print(sum)
这里使用了range函数,它是python内置函数,可以生成一系列整数,经常用于for循环
语法:
range(start,end,step)
在使用它的时候,如果只有一个参数,表示end类型(计数结束值)
如果有两个参数,输出从一个数到另一个数中间的数值
如果有三个数值
for i in range(1,10,2)
“1,10”表示1到10
“2” 表示步长
它的结果显示为1 3 5 7 9
实例(打印九九乘法表):
for i in range(1,10):for j in range(1,i+ 1):print(str(j) + "X" + str(i) + "=" + str(i * j) + "\t",end="")print("")
三:列表与元组
1:索引
序列中的每一个元素都有一个编号,也叫索引。索引从0开始递增,下标0为第一个元素,下标为1的表示第二个元素(从左到右)
Python的索引可以是负数,从负一开始(从右到左)
实例:
cat = ["第一个元素","第二个元素","第三个元素","第四个元素","第五个元素(最后一个)"]
#输出第三个元素
print(cat[2])
#输出最后一个元素
print(cat[-1])
2:切片
切片操作是访问序列中元素的另一种方法,它可以直接访问一定范围的元素
语法:
sname[start:end:step]
cat = ["第一个元素","第二个元素","第三个元素","第四个元素","第五个元素(最后一个)"]
#输出第二个到第四个元素
print(cat[1:3])
#输出第二个,第三个和第五个元素
print(cat[1:2:4])
3:序列相加
实例:
name1 = [1,2,3,4,5,6,7,8,9,10]
name2 = ["第一个元素","第二个元素","第三个元素","第四个元素","第五个元素","第六个元素"]
print(name1 + name2)
name3 = name1 + name2
print(name3)
结果
4:检查序列内容是否存在
是否存在
name1 = ["第一个元素","第二个元素","第三个元素","第四个元素","第五个元素","第六个元素"]
print("第二个元素" in name1)
返回值:True(真)
是否不存在
name1 = ["第一个元素","第二个元素","第三个元素","第四个元素","第五个元素","第六个元素"]
print("第二个元素" not in name1)
返回值:False(假)
5:计算序列的长度,最大值和最小值
len()函数计算序列长度
name1 = ["第一个元素","第二个元素","第三个元素","第四个元素","第五个元素","第六个元素"]
print(len(name1))
返回值为6
max()函数获取序列最大值
name1 = [1,2,3,4,5,6,7,8,9,10,11]
print(max(name1))
返回值为11
min()函数获取序列最小值
name1 = [1,2,3,4,5,6,7,8,9,10,11]
print(min(name1))
返回值为1
6:列表
遍历列表
只使用for循环实现
实例:
name1 = ["第一个元素","第二个元素","第三个元素","第四个元素","第五个元素","第六个元素"]
for i in name1:print(i)
使用for加enumerate()函数实现
输出索引值加运算内容
实例一:
name1 = ["第一个元素","第二个元素","第三个元素","第四个元素","第五个元素","第六个元素"]
for o,i in enumerate(name1):print(o,i)
解析:
o :保存索引值得变量
i :保存元素得变量
实例二:
name1 = ["第一个元素","第二个元素","第三个元素","第四个元素","第五个元素","第六个元素"]
for o,i in enumerate(name1):if o%2 == 0:print(i+"+",end="")else:print(i+"。")
解析:
o :保存索引值得变量
i :保存元素得变量
o%2 == 0 :求余是否为0
end= “” :一个函数,表示不换行输出
7:列表的元素得添加,修改和删除元素
添加单个元素
name1 = ["第一个元素","第二个元素","第三个元素","第四个元素","第五个元素","第六个元素"]
name1.append("第七个元素")
添加到列表的最后
添加一整个列表(两个列表合并)
name1 = ["第一个元素","第二个元素","第三个元素","第四个元素","第五个元素","第六个元素"]
name2 = [1,2,3,4,5,6,7,8,9]
name1.extend(name2)
修改元素
name1 = ["第一个元素","第二个元素","第三个元素","第四个元素","第五个元素","第六个元素"]
name1[2] = "修改的第三个元素"
删除元素
通过索引删除
name1 = ["第一个元素","第二个元素","第三个元素","第四个元素","第五个元素","第六个元素"]
del name1[0]
删除列表里第一个元素
通过元素值删除
name1 = ["第一个元素","第二个元素","第三个元素","第四个元素","第五个元素","第六个元素"]
name1.remove("第一个元素")
8:对列表进行统计计算
获取指定元素出现的次数
name1 = [1,1,1,1,1,1,1,2,3,4,5,6,7,8,9]
num = name1.count(1)
解析:
num :保存计算结果的变量
获取指定元素首次出现的下标
name1 = [1,1,1,1,1,1,1,2,3,4,5,6,7,8,9]
num = name1.index(4)
统计列表里数值和
name1 = [1,1,1,1,1,1,1,2,3,4,5,6,7,8,9]
num = sum(name1)
9:元组与列表类似
name1 = (1,2,3,4,"你好")
四:字典与集合
1:字典
字典是通过键获取而不是通过索引
python从入门到入坟相关推荐
- 深聊MySQL,从入门到入坟之:MySQL竟然也有后悔药!!!
MySQL后悔药,防止看铁窗 1.引言 2.5种后悔药 2.1 limit 2.2 先测试后生产 2.3 删除前,先备份 2.4 删除前,先查询 2.5 修改时, begin+commit 3. 总结 ...
- canvas 从入门到入坟
文章目录 canvas 从入门到入坟 1. 概述 2. 使用场景 2.1 图表的绘制 2.2 canvas游戏 2.3 说明与作用 3. Canvas 入门 3.1 完成目标 3.2 初始化 3.3 ...
- FHQ-Treap(非旋treap/平衡树)——从入门到入坟
作者:hsez_yyh 链接: FHQ-Treap--从入门到入坟_hsez_yyh的博客-CSDN博客 来源:湖北省黄石二中信息竞赛组 著作权归作者所有.商业转载请联系作者获得授权,非 ...
- 从入门到入坟搭建FreeNAS服务器并配置NextCloud_NAS存储
从入门到入坟搭建FreeNAS服务器并配置NextCloud 2021-01-06 23:15:38 173点赞 963收藏 100评论 创作立场声明:本文所有商品皆自费购入,第一次发表文章,若有不当 ...
- 【教程汇总+持续更新】Unity游戏开发从入门到入坟
新的一年,本该在年前整理的年终总结被拖到了年后开工.去年大量时间投入在Catlike教程的翻译上,截止目前位置,教程的进度已经完全追平原作者. 去年还有一部分是断断续续的更新SLG实战教程,但遗憾的是 ...
- 初阶指针---从入门到入坟
今天我们来见识一下c语言里让万千少年少女从入门到入坟的一道大门槛--指针 目录 1.指针是什么? 2.指针和指针类型 3.野指针 4. 指针运算 5. 指针和数组 6. 二级指针 7. 指针数组 1. ...
- python 连接hive_《go语言从入门到入坟》Go 操作 数据库、Redis、HDFS
楔子 这里我们来介绍一下如何使用 Go 连接数据库.Redis.HDFS,当然数据库.Redis.HDFS本身我们就不介绍了,这里我们主要介绍如何使用 Go 进行连接并执行相应操作. Go 操作数据库 ...
- 网络安全学习路线,入门到入坟,史上最全网络安全学习路线整理
很多小伙伴在网上搜索网络安全时,会出来网络安全工程师这样一个职位,它的范围很广,只要是与网络安全挂钩的技术人员都算网络安全工程师,一些小伙伴就有疑问了,网络安全现在真的很火吗? 那么寒哥就带大家看看, ...
- unity ui框架_[教程汇总+持续更新]Unity从入门到入坟——收藏这一篇就够了
----------------塔防(更新中),作者重写了基础篇(下方目录为:1.1(新) 基础)目前还在持续连载了5篇,因为不多我们更新完就能追到原作者的进度了------------------- ...
最新文章
- 让你的 IDEA 好用到飞起来的配置
- 一次mysql数据库连接池泄露的解决经历
- TCP keepalive的详解(解惑)
- Java版大顶堆的实现
- 获取cookies的简单代码(总结待续)
- Fultter之Future用法入门
- jdbc:mysql:replication_使用Mysql的Replication功能实现数据库同步
- linux 中特殊权限,Linux SetGID(SGID)文件特殊权限用法详解
- Jenkins高级篇之Pipeline方法篇-Pipeline Basic Steps-6-写文件writeFile和git SCM
- 数论基础知识点整理(基础篇)
- 开发常用词汇表(带音标)
- linux hping3命令,hping3命令 – 测试网络及主机的安全
- sin函数对照表_三角函数数值对照表.pdf
- linux磁盘镜像技术,Linux 下使用 dd 和 gzip 命令来代替 Ghost 做磁盘镜像
- 《Region Proposal by Guided Anchoring》阅读笔记
- 汉洛塔 简单算法(c和python)
- 【Linux】创建、修改和删除用户组(groupadd | groupmod | groupdel)
- win10下启动.bat文件闪退问题
- Unity2019_音效系统
- 经典递归算法之Fibonacci序列