day2:python基础语法,运算符,进制转换

1.python的基本介绍
python介绍.jpg

2.hello world实现

#print函数。功能是在控制台输出括号里的内容
print('hello world!')

3.python基础语法

1.注释
注释是代码中对代码进行解释和说明的文本内容;不会影响程序的功能和执行。
1)单行注释:在一行文字的前面加#(快捷键是ctrl+/)
2)多行注释:将注释内容写在三个双引号或者三个单引号里面(但是一般使用是三个双引号)
"""
2.多行注释:将注释内容写在三个双引号或者三个单引号里面(但是一般使用是三个双引号)
"""
2.语句 红色波浪号:语法有错误 黄色波浪号:格式有错误 绿色波浪号:单词有错误
1)一条语句占一行,语句结束后不用加分号。如果一行要写多条语句,语句之间必须用分号隔开。
2)如果一条语句很长,需要多行显示,可以在语句中加\然后再换行,注意\不能破坏数据本身。

3.缩进

1)python中一行代码的开头不能随便加缩进(空格或者制表符)
2)python语法要求必须要有缩进的位置一定要加缩进

4.标识符

1)标识符是用来命名用的。一般是给变量命名,函数命名或者类命名...
2)标识符规则:所有标识符都必须是由字母,数字和下划线组成:但是数字不能开头。
3)注意:python2.x之后,标识符中可以出现中文,日语韩语等符号,但是实际开发的时候不建议使用

abc = 10
abc12 = 11
a9b90 = 12
_abc = 13
_123 = 14
ba_yu = 15
5.关键字(保留字)

关键字就是python中有特殊功能和特殊意义的标识符。
"""
查看关键字的方法
['False', 'None', 'True', 'and', 'as', 'assert', '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']
import keyword
print(keyword.kwlist)
"""

6.常见数据类型和数据

1)数字数据:整型(int),浮点型(float)
2)字符串(str):用双引号或者单引号将文本数据引起来
3)布尔(bool):只有True和False两种值,其中True代表真/肯定,False代表假/否定
4)列表(list),元组(tuple),集合(set),字典(dict),函数(function)等等...
5)类型转换:类型名(数据)-》将括号中的数据转换为指定的类型并返回
a = (168999.0234)
print('这是谁的数字%5.3f'%(a))

7.print和input

"""
print函数 - 输出函数,在控制台打印后面括号中的内容的结果
input函数 - 输入函数,获取从控制台输入的内容(输入回车的时候任务就完成)
input(提示信息)

注意:不管从键盘上输入的内容是什么,input返回的结果的类型都是字符串类型
type():查询变量类型。
"""

4.进制转换

# 计算机存的是二进制的补码
# 计算机只能存储和处理二进制数据
# 1.int类型 - 包含所有的整数,整数可以表示为十进制,二进制,八进制,十六进制。python不支持浮点数的二进制表示

"""
1)十进制
1.基数:0-9
2.进位:逢十进一
3.位权:123(10) = 100 + 20 + 3 = 1 * 10^2 + 2 * 10^1 + 3 * 10^0
2)二进制 表示:在二进制位前面加0b #其他位转化为二进制bin()
1.基数:0,1
2.进位:逢二进一
3.位权:111(2) = 1 * 2^2 + 1 * 2^1 + 1 * 2^0
3)八进制 表示:在八进制位前面加0o #其他位转化为八进制oct()
1.基数:0-7
2.进位:逢八进一
3.位权:123(8) = 1 * 8^2 + 2 * 8^1 + 3 * 8^0
4)十六进制 表示:在十六进制位前面加0x #其他位转化为十六进制hex()
1.基数:0-9 and a-f
2.进位:逢十六进一
3.位权:111(16)= 1 * 16^2 + 1 * 16^1 + 1 * 16^0

获取ascaII值用ord()

"""
"""
1.原码:符号位 + 真值(数字转化为二进制的值)
2.反码:正数的反码,补码和原码一样 ,负数的反码:符号位不变,其他位取反
3.补码:负数的补码:符号位不变,先取反,再加一
4.计算机负数采用补码的原因:计算器没有减法器,负数采用原码进行加法运算的时候结果不对,采用补码结果才对
"""
"""
位(bit)
1字节(byte) = 8 bit
1 kb = 1024 byte
1 M = 1024 kb
1 G = 1024 M
1 T = 1024 G
"""

5.运算符

# python支持的运算符:数学运算符,逻辑运算符,比较运算符,位运算符,赋值运算符
1.数学运算符:+(求和) ,-(求差) ,*(求积) , /(求商) , %(求余) , //(整除), ** (幂运算)
print(10 + 20)
print(10 - 20)
print(10 * 20)
print(10 / 20)

2)%-求余数 作用:判断一个数是否能被另外一个数整除,判断一个数的奇偶性(对2取余,看结果是0还是1),获取一个数的位数

print(10 % 3) # 求10除以3的余数

3)//-求商,取商的整数部分 根据被除数是整型还是浮点型来决定商的类型。

print(5//2)

4)** - 求次方值
x ** y - 求x的y次方 还可以求开方(开n次方等于1/n)

print(2 ** 3)
print(16 ** 0.5)
print(8 ** (1/3))
2.比较运算符 > , < , >=, <= ,== , != ,所有的比较运算符结果都是bool值:不是false就是true
print(100 > 10)
print(100 < 10)
print(100 >= 100)
print(100 <= 100)

2). ==(判断是否相等) ,!= (判断是否不相等)

print(100 == 100)
print(100 != 100)

3).注意python中比较大小的时候可以像数学一样连写表示范围。

6.作业

1.下列四组数,依次为二进制、八进制和十六进制,符合要求的是(d)
a. 12, 77, 10
b. 12, 80, 10
c. 11, 78, 19
d. 11, 77, 19

2.二进制数加法运算的基本特点是“逢二进一”,即0+0=0,0+1=1,1+0=1,1+1=0并进位。运用这一基本法则和十进制运算的类似规律,得出二进制数加法运算1001+101的结果为(c)
a. 1001
b. 1010
c. 1110
d. 1101

3.八进制754中的数码7对应的位权是(c)
a. 10^2 b. 16^1 c. 8^2 d. 2^2

4.十进制数53转换成二进制数是(b)
a. 100101
b. 110101
c.100100
d.110100

5.已知,十进制中的8在X进制中表示为11,即(10)8=(X)11。请问这个X进制具体为(b)进制
a. 6
b. 7
c. 8
d. 9

6.二进制的1000001相当十进制的4,二进制的100.001可以表示为_4
A: ① 62 ② 63 ③ 64 ④ 65
B: ① 23+2–3 ② 22+2–2 ③ 23+2–2 ④ 22+2–3

  1. n = 6784,以下能够获取到7 的方法有(c,d)
    a. n / 1000 % 100
    b. n % 1000 / 100
    c. n // 100 % 10
    d. n // 10 % 100 // 10

8.以下表达式 10 / 4 + 23 // 4 * 2 - 30的计算结果是:-17.5

9.写出计算机底层计算-10-20的步骤(补码计算和转换过程)
-10 原码:10001010 补码: 11110110
-20 原码:10010100 补码:11101100
-10 + (-20) = 先算补码相加得到:11100010 再转化为原码:
10011110

10.写代码获取数字n=1234中每一位上的数

 n = 1234
print('个位数为%d'%(n%10))
print('十位数为%d'%(n%100//10))
print('百位数为%d'%(n//100%10))
print('千位数为%d'%(n//1000))

11.写代码统计一个任意整数m是几位数,并且逆序打印出每一位数字。(0基础不做, 不能用字符串来做)
例如: m=123, 打印: m是3位数 3 2 1
m=45321, 打印:m是5位数 1 2 3 5 4

def operation(value):
    num = 0
    while True:
        print(value % 10)#逆序打印每一位数
        num += 1
        value = value // 10
        if value < 10:
            print(value)#打印最后一位
            num += 1
            print('位数是%d'%num)
            break

你可能感兴趣的:(day2:python基础语法,运算符,进制转换)