python基础笔记1

本文详细介绍了Python的基础知识,包括print()函数的使用,转义字符的概念,原义字符的表示,二进制与字符编码的关系,标识符和保留字的规则,以及变量、数据类型、注释和运算符的讲解。特别强调了按位和序列运算符的用法,并提供了多个示例帮助理解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

内容总结:
在这里插入图片描述

print()函数

  1. print函数输出的内容可以是数字,字符串,含操作数和运算符的表达式
  • 数字:print(123)(直接出入,不加引号)
  • 字符串:print('xxxx')(需要加引号才能被计算机识别)
    当输出内容中带有单、双、三引号时,代表计算机不用理解,直接输出即可
  • 含操作数和运算符的表达式
    输出的是表达式的运算结果
    如:print(1+2):这里1,2叫做操作数,+为运算符,输出结果为3
  1. 内容可输出到控制台,文件或显示器上
  • 输出到文件
    注意点:1.所指定的盘要存在 2.使用file=xx 的形式
fp=open('D:/text.txt','a+') #a+:以读写的方式打开文件,若文件不存在,则创建;若存在,则在原有文件的基础上追加内容
print('helloworld',file=fp) #若只写fp,则打开text文件为空
fp.close()#关闭
  1. 输出形式分为换行,不换行
    输出内容不换行:几个输出内容间用“,”隔开
print('hello','world','python')

输出结果:
在这里插入图片描述
4. 为输出的几个字符之间添加分隔符:sep=' '

print('hello','world','love',sep=',')
#hello,world,love

转义字符

转义字符指:+想要实现转义功能的首字母
如:换行:\n(new line的首字母 )
回车:\r(return的首字母)
水平制表位:\t(tab的首字母)
退格:\b(back的首字母)
关于制表位:一个制表位(\t)占4个位置,每4个位置为\t。若\t前没有占满4位,则\t的功能为补全4位;否则开一个新的制表位(占4个位置):
在这里插入图片描述

print("hello\tworld")
print("hello123\tworld")

输出结果:
在这里插入图片描述

原义字符

使转义字符不起作用
在字符串前加上r或R即可
注意:字符串最后一位不能是反斜杠(\),但可以是两个反斜杠(\)

二进制与字符编码

  • 8bit=1(byte)字节,1024byte=1mb(兆字节)
  • chr()表示ASCII码对应的字符;ord()返回字符对应的ASCII码
print(chr(0b100111001011000))  #二进制串为“乘对应的二进制表示”  ,0b表示输入的为二进制字符
print(ord("乘"))

标识符和保留字

  1. 保留字
    定义:一些单词在python中被赋予了特定意义,在我们为对象起名字时这些单词不能使用。(禁用的对象名)
    如:使用命令
 import keyword
print(keyword.kwlist)

可以查看保留字有哪些:
[‘False’, ‘None’, ‘True’, ‘peg_parser’, ‘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’]

  1. 标识符
    定义: 用户给变量、函数、类、模块和其他对象起的名字
    规则: 不能使用保留字;不能用数字开头,严格区分大小写

变量

标识符的一种。可以把变量看做一个带标签的盒子(name),把需要的数据(Bob)放(=)进去即为赋值过程。
name=Bob,这里面name为变量名;“=”为赋值运算符;Bob为值。
注意: print()函数输出时,加引号表示输出的是这个字符串,不加引号输出的是这个变量的值

name='Bob'
print(name)
print("name")

输出结果:
在这里插入图片描述

  1. 变量由3部分组成:
  • 标识:表示对象储存的内存地址,可用内置函数id()获取。
  • 类型:表示对象数据类型,可用内置函数type()获取。
  • 值:表示对象储存的具体数据,使用print()输出值。
name='Bob'
print('值',name)
print('标识',id(name))
print('类型',type(name))

输出结果:
在这里插入图片描述
2. 对变量多次赋值后,变量名指向新的空间
如:

name='Bob'
name='Alice'
print(name)

输出结果:Alice

数据类型

类型表示
整数类型int12
浮点数类型float1.2
布尔类型boolTrue ,False
字符串类型str‘我爱python’
  • 整数类型
    可表示正数,负数和0,
    默认为表示为十进制表示
    二进制(Binary):0b+二进制表示
    八进制(Octal):0o+八进制表示
    十六进制(Hexadecimal):0x+十六进制表示
print('十进制',12)
print('二进制',0b100011)
print('八进制',0o71)
print('十六进制',0xB2)

在这里插入图片描述

  • 浮点类型
    浮点数存储可能有不准确性,如:
print(1.1+1.2) #2.3
print(1.1+2.2) #3.3000000000000003

可以导入模块decimal进行准确的十进制运算(传入的参数为int或字符串DNA不能是浮点数):

from decimal import Decimal
print(Decimal('1.1')+Decimal('2.2'))
  • 布尔类型
    取值只有2种:Ture(真)或False(假)
    可转化为整数进行计算:Ture → \to 1;False → \to 0
print(Ture+1)#输出结果为2,ture表示1
  • 字符串类型
    使用’ ‘," ",’" "'定义,单、双引号定义的字符串要在一行;三引号定义的字符串则可以分布在连续的多行
  • 数据类型转换
    将不同数据类型拼接在一起时需要数据类型转换。
    要转换为什么类型就用“类型名(要转换的变量)"

注意:

  1. 文字类和小数类字符串无法转为int类型;float转化为int会去掉小数位
  2. 文字类字符串无法转为int;int转为float末尾为“.0”
    如:
name='张三'
age=20
print(type(name),type(age))
# print('我叫'+name+'今年,'+age+'岁')
print('我叫'+str(name)+'今年,'+str(age)+'岁')  #+为连接符
# str(name)表示将int类型转换为str类型

输出结果:在这里插入图片描述

n1='20.6'
n2='20'
n3=20
n4=True
print(type(n1),type(n2),type(n3),type(n4))
#print(int(n1),type(n1))     #将str转为int报错,因为字符串为小数串
print(int(n2),type(int(n2)))
print(float(n3),type(float(n3)))
print(int(n4),type(int(n4)))

输出结果:
在这里插入图片描述

注释

注释类型:
单行注释:#开头
多行注释:无单独标记,一般认为不含变量名的一对三引号间的代码为注释内容

运算符

按位运算符

原码:数的二进制表示,第一位为0 表示正数,否则为正数(符号值+数值表示)
反码:正数的反码为本身;负数的反码为符号位不变,其余各位取反
补码:正数的补码为本身;负数的补码为符号位不变, 其余各位取反, 最后+1。 (即在反码的基础上+1)

十进制数原码反码补码
-61000 01101111 10011111 1010
60000 01100000 01100000 0110
-211001 01011110 10101110 1011
210001 01010001 01010001 0101
逻辑符号说明作用
~n按位取反
a&b按位与全1则1
a|b按位或有则1
a^b按位异或
a<<na向左移n位,用零填充
a>>na向右移n位,用零填充

1.按位取反(~)
对十进制数的补码进行按位取反,再找到其原码,原码的十进制数表示即为按位取反结果
技巧:

~n=-(n+1)
~(-n)=n-1

6
原码:0000 0110
反码:0000 0110
补码:0000 0110
~0000 0110):1111 1001(为~6的补码)
反码:1111 1000(反向求反码)
原码:1000 0111-7)(反向求原码)
所以~6==-7
-21
原码:1001 0101
反码:1110 1010
补码:1110 1011
~1110 1011):0001 0100(为~6的补码)
反码:0001 0100(反向求反码)
原码:1001 011120)(反向求原码)
所以~(-21)==20

2.按位与(&),按位或(|)

二进制表示按位与,全1则1
二进制表示按位与,有1则1

101010
30011
1010&0011=0010
1010|0011=1011
所以3&10==2
所以3|10==11

3.向左移位(<<),向右移位(>>)

a<<n的结果为a*(2^n)
a>>n的结果为a//(2^n)

101010
右移1位:1010 020)
右移2位:1010 0040)
左移1位:01015)
左移2位:00102

序列运算符

序列运算符的对象指列表,字符串,元组

运算符说明作用
s[i]读取索引i处的元素
s[start:stop]切片start,stop指切片的起止索引位置在
s[start:stop:step]切片,指定步长
s + t拼接s,t
k*ss+s+…+sk个s拼接在一起
val in s/ val in s检某个值是否在s中返回值为布尔值(True/False)
s='1234'
t='5678'
print(s+t)#12345678
print(3*s)#123412341234
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值