python-day2-基础语法和进制

本文介绍了Python的基础语法,包括注释、语句、缩进和标识符。详细讲解了输出函数`print()`和输入函数`input()`。深入探讨了不同进制的概念,如十进制、二进制、八进制和十六进制,并阐述了它们之间的转换方法。同时,还涵盖了原码、补码和反码的概念。
摘要由CSDN通过智能技术生成

##一、快捷键

ctr+a全选
ctr+shift+z反撤销
ctr+f查找替换
ctr+c复制
ctr+v粘贴
ctr+x剪切
ctr+s保存
ctr+r/f查找/替换
ctr+z回撤
ctr+/注释

二、基础语法

1、注释

注释:程序中不参与执行,不影响程序功能的说明性文字。

1)单行注释:#(接需要注释的内容)

#第一行注释
#第二行注释

2)多行注释:’’’(需要注释的内容)’’’

'''
第一行注释
第二行注释
...
'''

2、语句

1)一条有效代码就是一个语句

2)一般情况下一条语句占一行

3)一条语句结束不需要分号(如果多条语句在一行显示,必须用分号隔开)

4)如果一条语句很长,需要多行显示,在换行时用\链接

print('abc')   #abc
print('czl')   #czl
print(1111111111+5555555555+2222222222+\
      33333333333+66666666666+44444444)   #108933333331

3、缩进

python是通过缩进和冒号来产生代码块的,没有块语法的时候不能随便使用缩进。

print('第一行')
print('第二行')

4、标识符和关键字

4.1、标识符 - 用来给变量、函数、类取名

python中标识符的要求:1)有字母,数字或者下划线组成; 2)不能数字开头,不能使用关键字。
注意:python3.x中标识符可以出现中文,但是实际开发中不能这么做
合法的标识符:L40,40,a_b10,anc12,_
不合法:40L,zbc+123,abc.123

####4.2、关键字
在python中有特定功能或者特殊意义的一部分标识符就是关键字。(对于特定的语言来说关键字有哪些,每个关键字的意义和功能是固定的)

import keyword    #导入keyword模块
print(keyword.kwlist)   #打印所有关键字

在这里插入图片描述

5、常用数据

1)数字数据:表示大小的数据才是数字数据,数字数据在程序中表示的时候直接写。

a = 100
b = int(input('请输入数字'))
print('a和b的和:',a+b)

注:input()接收的是字符串类型的数据,接收数字数据需强制转换。

2)文本数据:用文字信息描述的数据就是文本数据,文本数据在程序中表示的时候要放在单/双引号内。

c = '123czl'
print(c)

3)布尔值:只有true和false两个值,通常表示真和假。

###6、常见数据类型

1)int(整型) - 所有整数对应的数据类型。python2.x有long
2)float(浮点型) - 所有的小数对应的类型都是浮点型。(支持科学计算法)
3)str(字符串) - 所有文本数据对应的数据类型。
4)bool(布尔类型) - Ture和False对应的数据类型。
5)其他常见类型:list(列表),tuple(元组),dict(字典),迭代器,生成器,函数,自定义类型…

三、输入输出

1、输出函数 - print()

在控制台打印指定数据(打印结束自动换行)。

# 用法一:print(输出的信息)
print('==============用法一================')
print('hello world!')
print(1000)
print(True)

# 用法二:print(数据1,数据2,数据3,数据4,...)
print('===============用法二===============')
print('haha',123,True)

# 方法三:print(‘数据1’,’数据2‘,...,end='内容')   不换行
print('=============用法三=================')
print('123;',end='321 ')
print('hello world!')

# 方法四:print(数据1,数据2,数据3,...,sep='间隔的内容(文本数据)')
print('==============用法四================')
print(1,2,3,4,5,6,7,8,9,sep='<')

print('======================')
print(1,2,3,4,5,6,7,8,9,sep='<',end=';')    #sep和end谁在前谁在后没影响
print('都小于10')
print(sum(range(1,5)))

在这里插入图片描述

2、输入函数 - input()

用法:input(请输入提示信息)

tel = input('请输入手机号:')
print(tel)
print(sum(range(101)))

在这里插入图片描述

四、进制介绍

常见进制:十进制,二进制,八进制,十六进制

1、十进制

1)基数:0~9
2)进位:逢十进一
3)位权:不同数字在不同位置表示的意义不同,10的n次方

112110= 1*10^3+1*10^2+2*10^1+1*10^0

4)程序中直接写

2、二进制

1)基数:0,1
2)进位:逢二进一

'''
11011 + 10111 = 110010
1011 + 111010 = 1000101
'''

3)位权:

1010112= 2^5 + 2^3 + 2^1 + 2^0

4)程序中表示:二进制数前需要加0b/0B

5)转换: bin(其他进制的数)

0b111001   #代码中二进制数的写法
print(0b11001)
print(bin(20))   #十进制转二进制二进制

3、八进制

1)基数:0~7
2)进位:逢八进一

'''
76 + 45 = 143
'''

3)位权:八的n次方

1238= 1*8^2 + 2*8^1 + 3*8^0 = 64 + 16 + 3 = 83

4)程序中表示方法:0o/0O
5)转换: oct(其他进制的数)

0o10
0o45         #代码中八进制数的写法
print(oct(20))   #十进制转八进制

4.十六进制

1)基数: 0,1,2,3,4,5,6,7,8,9, a(10), b(11), c(12), d(13), e(14), f(15)
2)进位: 逢16进1

3)位权:

'''
123(16) = 16^2 + 2*16^1 + 3*16^0 ==256 + 32 + 3 = 291
'''

4)表示方式(python): 十六进制数前加0x/0X
5)转换: hex(其他进制的数)

0x9afdab
0x5aBc2F     #代码中十六进制的表示方法
print(hex(20))   #十进制转十六进制

五、不同进制之间的相互转换

1、其他进制转十进制

手动转换:每一位上的数乘以位权再求和

0b1011 -> 2^3 + 2^1 + 2^0 == 8 + 2 + 1== 11
0o12 -> 1*8^1 + 2*8^0 == 8 + 2 == 10
0xaf -> 10*16^1 + 15*16^0 == 160 + 15 == 175

用代码转换的方法:

print(0b1011)
print(0o12)
print(0xaf)

2、十进制转其他进制

手动转换:1)辗转取余法
从后往前取余直到余数为0。(图为十进制转二进制)

在这里插入图片描述

十进制转八进制就除8取余,十进制转十六进制就除16取余。

3、八进制,十六进制和二进制的相互转换

这三种进制之间存在联系:
8= 2^3
16=2^4

八进制转二进制:将一位八进制转换为三位二进制

0o67 -> 0b110 111
0o624 -> 0b110 010 100

十六进制转二进制:将一位十六进制转换为四位二进制

0xaf ->0b1010 1111
0xf21 ->0b1111 0010 0001
0xa8e4 ->0b1010 1000 1110 0100

2进制转8进制

8 4 2 1       #从后往前每三位二进制数转换为一位八进制数,最后不够用0补齐
  1 1 0    -> 4+2+0=6
  1 1 1    -> 4+2+1=7
  0 1 1    -> 0+2+1=3

2进制转16进制同理:每四位2进制数转换为一位16进制数。

六、原码、补码和反码

1、原码

源码 = 符号位+真值
符号位:最高位表示符号(0表示正,1表示负)
真值:数字的绝对值的二进制
10(int)的原码:00001010 (python中)
10(int)的原码:00000000 00000000 00000000 00001010 (C语言中)
-3原码:1000 0011
-2原码:1000 0010

一个字节八位,不足八位用0补齐。

2、负数的反码(正数原码,反码,补码相同,都是原码)

-10的反码:1111 0101
-3的反码:1111 1100
-2的反码:1111 1101

3、负数的补码 ->反码加一

计算机存储和操作数据是操作的补码,显示看结果是返回原码
-10的补码:1111 0110
-3的补码:1111 1101
-2的补码:1111 1110

例:

补码计算3-2=1

0000 0011(补)+ 1111 1110(补)=0000 0001(补) --符号位0表示正->0000 0001(原)=1

源码计算3-2=

0000 0011(原) + 1000 0010(原) = 1000 0101(原)—符号位1表示负

计算机运算时利用补码计算,最后再还原。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值