文章目录
前言
本文分享Python入门的基础知识,供大家学习交流。
提示:以下是本篇文章正文内容,下面案例可供参考
一、输出函数print()
1、输出内容
数字
print(9)
字符串(一定要加引号)
print('helloworld')
print("helloworld")
含运算符的表达式
print(3+1)
2、输出目的地
输出到显示器:默认
输出到文件
fp=open('C:/test.txt','a+')
print('helloworld',fp)
fp.close()
注意点:
- 所指定的盘符存在
- 使用file=fp
- a+:如果文件不存在就创建,存在就在文件内容的后面继续添加
- 数据默认换行输出
3、输出形式
换行:默认
不换行:用逗号分隔
print('hello','world','python')
二、转义字符与原字符
1.转义字符
1.1 什么是转义字符
反斜杠+想要实现转义功能的首字母。
1.2 为什么需要转义字符
当字符串中包含反斜杠、单引号和双引号等有特殊用途的字符时,必须使用反斜杠对这些字符进行转义。
反斜杠转义\\
print('http:\\\\baid.com')
输出结果:http:\\baid.com
单引号转义\'
print('老师说:\'大家好\'')
输出结果:老师说:'大家好'
双引号转义\"
参考单引号转义例子
当字符串中包含换行、回车、水平制表符或退格等无法直接表示的特殊字符时,可以使用相应的转义字符。
换行\n
print('hello\nworld')
输出结果:
hello
world
制表符\t
注意:占满重开制表位,不占满补全制表位
print('hello\tworld')
输出结果:
hello world(间隔3个字符)
print('helloooo\tworld')
输出结果:
helloooo world(间隔4个字符)
回车(覆盖)\r
print('hello\rworld')
输出结果:
world (world 将hello进行了覆盖)
回退一格\b
print('hello\bworld')
输出结果:
hellworld (退格o无)
1.3 转义字符总结
2、原字符
不希望字符串中的转义字符起作用,可使用原字符,在字符串前加r或R。
print(r'hello\nworld')
输出结果:
hello\nworld
注意:最后一个字符不能为\,否则会报错
三、二进制与字符编码
计算机只识别二进制,命令行窗口运行calc调出计算器。
8bit=1bype
1024bype=1KB 千字节
1024K=1MB 兆
1024MB=1GB 吉
1024GB=1TB 太
print(chr(0b1001110001011000))
输出结果:乘
print(ord'乘')
输出结果:20056
四、Python中的标识符和保留字
1、标识符
变量、函数、类、模块和其他对象起的名字就叫标识符。
标识符规则:
- 由字母、数字、下划线组成
- 不能以数字开头
- 不能是保留字
- 严格区分大小写
2、保留字
某些单词被赋予了特定的意义,这些单词不能用于对对象的起名。
输出保留字列表:
import keyword
print(keyword.kwlist)
输出结果:
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
五、Python中的变量与数据类型
1、变量的定义和使用
1.1 变量的定义
变量是内存中一个带标签的盒子。
1.2 变量由三部分组成
-
标识
- 表示对象所存储的内存地址
- 可使用内置函数id(obj)获取
-
类型
- 表示对象的数据类型
- 可使用内置函数type(obj)获取
-
值
- 表示对象所存储的具体数据
- 可使用函数print(obj)进行打印输出
1.3 变量的存储情况
1.4 变量的多次赋值
- 当变量多次赋值后,变量会指向新的空间。
- 先前的赋值会产生内存垃圾,最后被清理。
2、数据类型
2.1 整数类型int
英文为integer,简写为int
整数类型表示的数据范围:可表示正数、负数和0。
整数的不同进制表示方式:
二进制:以0b开头 | print(0b1011) | 输出结果:11 |
八进制:以0o开头 | print(0o176) | 输出结果:126 |
十进制:默认的进制 | ||
十六进制:以0x开头 | print(0x1EAF) | 输出结果:7855 |
整数的进制表(总结):
2.2 浮点类型float
浮点数由整数部分和小数部分组成。
浮点数存储存在不精确性:
使用浮点数进行运算时,可能会出现小数数位不确定的情况
- print(1.1+2.1) 结果为:3.2
- print(1.1+2.2) 结果为:3.3000000000000003
解决方案:
from decimal import Decimal
print(Decimal('1.1')+Decimal('2.2'))
结果为:3.3
2.3 布尔类型bool
英文为boolean,简写为bool
用来表示真或假的类型。True表示真, False表示假。
布尔值可以转化为整数:True ->1,False->0
- print(True+1) 结果为2
- print(False+1) 结果为1
2.4 字符串str
字符串又称不可变的字符序列,可以使用单引号' ' 双引号" " 三引号''' ''' """ """ 来定义。
单引号和双引号定义的字符串必须在同一行:
str1='人生苦短,我用python'
str2="人生苦短,我用python"
三引号定义的字符串可以分布在连续的多行:
str3='''人生苦短,我用python'''
str4="""人生苦短,
我用python"""
3、数据类型转换
3.1 为什么需要数据类型转换
将不同数据类型的数据拼接在一起。
name=张三
age=20
print('我叫'+name+'今年'+str(age)+'岁')
3.2 将其他数据类型转成字符串str()
也可使用引号进行转换
a=10 b=198.8 c=False
print(type(a),type(b),type(c))
输出结果:<class 'int'> <class 'float'> <class 'bool'>
print(str(a),str(b),str(c),type(str(a)),type(str(b)),type(str(c)))
输出结果:10 198.8 False <class 'str'> <class 'str'> <class 'str'>
3.3 将其他数据类型转成整数int()
文字类和小数类字符串,无法转化成整数。
浮点数转化整数,抹0取整。
s1='128' f1=98.7 s2='76.77' ff=True s3='hello'
print(type(s1),type(f1),type(s2),type(ff),type(s3)
输出结果:<class 'str'> <class 'float'> <class 'str'> <class 'bool'> <class 'str'>
将str转成int类型
字符串为数字串(整数):
print(int(s1),type(int(s1))
输出结果:128 <class 'int'>
若字符串为小数串或非数字串时,不允许转换。
print(int(s2),type(int(s2))#字符串为小数串
print(int(s3),type(int(s3))#字符串为非数字串
将float转成int类型
截取整数部分,舍弃小数部分。
print(int(f1),type(int(f1)))
输出结果:98 <class 'int'>
将bool转成int类型
True为1,False为0。
print(int(ff),type(int(ff)))
输出结果:1 <class 'int'>
3.4 将其他数据类型转成浮点数float()
文字类无法转成整数
整数转成浮点数,末尾为 .0
s1='128.98' s2='76' ff=True s3='hello' i=98
print(type(s1),type(s2),type(ff),type(s3),type(i)
输出结果:<class 'str'> <class 'str'> <class 'bool'> <class 'str'> <class 'int'>
print(float(s1),type(float(s1))
输出结果:128.98 <class 'float'>
print(float(s2),type(float(s2))
输出结果:76.0 <class 'float'>
print(float(ff),type(float(ff))
输出结果:1.0 <class 'float'>
print(float(s3),type(float(s3))
报错
print(float(i),type(float(i))
输出结果:98.0 <class 'float'>
3.5 数据类型转换总结
六、Python的注释
注释:在代码中对代码的功能进行解释说明的标注性文字,可提高代码可读性
注释内容会被Python解释器忽略。
注释通常分为三种类型
单行注释
以#开头,直到换行结束
#这是一条输出语句
多行注释
用一对三引号''' ''' 标记
'''将运算结果
输出到屏幕上'''
中文编码声明注释
在文件开头加上中文声明注释,用以指定源码文件的编码格式。
#coding:gbk #ANSI
#coding:UTF-8 #UTF8
七、Python的输入函数input()
input()的基本使用
present=input('小朋友想要什么礼物呢')
输入:金箍棒
print(present,type(present))
输出结果:金箍棒 <class 'str'>
例:从键盘输入两个整数,并计算两个整数的和
a=int(input('请输入一个加数:'))
b=int(input('请输入另一个加数:'))
print(a+b)
八、Python中的运算符
1、算术运算符
标准算术运算符
加+ | print(1+2) | 结果为:3 |
减- | print(1-1) | 结果为:0 |
乘* | print(1*2) | 结果为:2 |
除/ | print(11/2) | 结果为:5.5 |
整除// | print(11//2) | 结果为:5 |
整除注意点:一正一负向下取整
- print(9/-4) 结果为:-3
- print(-9/4) 结果为:-3
取余运算%
print(11%2) 结果为:1
注意点:一正一负根据公式:余数=被除数-除数*商
- print(9%-4) 结果为:-3 9-(-4)*(-3)=-3
- print(-9%4) 结果为: 3 -9-4*(-3)=3
幂运算**
- print(2**2) 结果为:4
- print(2**3) 结果为:8
算术运算符总结
2、赋值运算符=
执行顺序:右->左
支持链式赋值:a=b=c=20
支持参数赋值:+= -= *= /= //= %=
- a=10 a+=30 相当于a=a+30 结果为:40
- a=10 a-=30 相当于a=a-30 结果为:-20
- a=10 a*=30 相当于a=a*30 结果为:300
- a=100 a/=30 相当于a=a/30 结果为:3.3333333
- a=100 a//=30 相当于a=a//30 结果为:3
支持系列解包赋值:a,b,c=10,20,30
- 变量的个数和值的个数要相同
- 交换a,b的值:a,b=b,a
赋值运算符总结
3、比较运算符
对变量或表达式的结果进行大小、真假比较,结果为bool类型。
> < >= <= != ==
一个变量由三部分组成:标识,类型,值。
比较对象的值(value)使用==
比较对象的标识(id)使用is
例1
a=10
b=10
print(a==b)
print(a is b)
第一句输出语句结果为:True 说明a与b的value相等
第二句输出语句结果为:True 说明a与b的id相等
例2
lst1=[11,22,33,44]
lst2=[11,22,33,44]
print(lst1==lst2)
print(lst1 is lst2)
第一句输出语句结果为:True 说明lst1与lst2的value相等
第二句输出语句结果为:False 说明lst1与lst2的id不相等
比较运算符总结
4、布尔运算符
and
当两个运算数为True时,结果才为True
or
当有一个运算数为True时,结果为True
not
如果运算数为True(False),结果为False(True)
in
s='helloworld'
print('w' in s)
print('k' in s)
第一句输出语句结果为:True 说明字母w在字符串s中
第二句输出语句结果为:False 说明字母k不在字符串s中
not in
print('w' not in s)
print('k' not in s)
第一句输出语句结果为:False 说明字母w在字符串s中
第二句输出语句结果为:True 说明字母k不在字符串s中
布尔运算符总结
5、位运算符
位与&
同为1为1,否则为0
print(4&8)
结果为:0
位或|
同为0时为0,否则为1
print(4|8)
结果为:12
左移运算符<<
高位溢出舍弃,低位补0
向左移动1位,相当于乘2
print(4<<1)
结果为:8
print(4<<2)
结果为:16
右移运算符>>
低位溢出截断,高位补0
向右移动1位,相当于除以2
print(4>>1)
结果为:2
print(4>>2)
结果为:1
位运算符总结
九、运算符的优先级
算术运算>位运算>比较运算>布尔运算>赋值运算
有括号先计算括号
总结
本文分享了一些Python入门的基础知识,欢迎大家批评指正╮( ̄▽ ̄)╭,一起交流学习哇~