第二次笔记

01

# 编程,编程语言

# 编程:用代码写一个程序 编程语言:用那种语法规则编写程序

# 编译型语言、解释性语言

# 编译型:执行效率高,平台依赖性较高 c语言

# 解释型:执行效率相对较低,可移植性相对较高

# python缺点:1、运行速度慢

# 2、不能去加密代码。

02.简单的python代码

print("hello,python",end="")

print("hi")

03.输入

input("请输入您的名字:")

04.缩进要求

for i in range(10):

print(i)

# 不要边用空格键边用tab键盘

05.注释

# 单行注释 #

# 多行注释

'''

我是多行注释

'''

"""

我同样是多行注释

"""

06.结束符

print("hello, i love you");print("hello, i love you")

print("hello, i love you")

07.变量

# 程序运行时,存储数据的盒子

# 变量名 = 变量值

# 代码复用,让代码更加灵活

uname = input("请输入您的名字:")

print(uname)

# type() 返回变量类型的

print(type(uname))

age = 21

print(type(age))

08.标识符命名规则

09.数据类型

# 基本数据类型

# 数值型

# 整型

# 浮点

# 字符串

print(type('zhangsan'))

print(type("zhangsan"))

print(type('''zhangsan'''))

# 布尔类型 True False

# None

# NaN

# 复合数据类型

  1. 数据类型转换

# a = int(input("请输入数字"))

# b = int(input("请输入数字"))

# print(type(a))

# print(a+b)

# int() float()

# a = float(input("请输入数字"))

# b = float(input("请输入数字"))

# print(type(a))

# print(a+b)

# print("zhangsan:"+19) 字符串和数字拼接会报错

print("zhangsan:"+str(19))

# 自动类型转换

a = 10

b = 3.14

print(a+b)

c = True #True 转换成1

print(a+c)

print("#"*10)

  1. 转义字符

print("I'm zhangsan")

print('I\'m zhangsan')

第二次笔记

回顾:

字符串格式化(5):

1、+

2、print("",变量名)

3、print("%d,%d"%(变量名1,变量名))

4、print("{}+{}={}".format(变量1,……))

5、print(f"mcks{变量名}")

运算符:

1、算术运算符: + - * / // %

2、关系运算符(比较) ==

3、逻辑运算符 and or not

4、所属 :in not in

5、is 内存地址是否相同

6、赋值运算符 =

a = 1

a += 4 a = a + 4

python中没有自增自减

()提高优先级

字符串对象: dir()

位运算:基于二进制的运算 ---计算机最小单位:位bit

计算机的底层基于位运算的

&

|

^ 异或

~ 按位取反

>>

<<

字节1byte = 8bit

10+11

0000 1010

0000 1011

---------------

0001 0101

正数相加的问题,负数?

8位的首位作为符号位 1代表负数 0代表正数

-3+2

1000 0011

0000 0010

-------------

1000 0101 -5(出大事了)

为了解决负数运算问题------原码、反码、补码三个概念

原码 数值的标准的二进制位

反码 符号位不变,其余位取反

补码 反码+1

原码 反码 补码

-3 1000 0011 1111 1100 1111 1101

2 0000 0010

------------------------------------------

1000 0001 1111 1110 1111 1111---

正数不存在反码、补码,计算机底层的运算是基于补码

-3+4

-3 1000 0011 1111 1100 1111 1101

4 0000 0100

------------------------------------------

0000 0001

位运算:

&:两真则真,一假则假

8&9: 0000 1000

& 0000 1001

---------------

0000 1000

|:两假为假,一真则真

8|9:

0000 1000

0000 1001 |

---------------

0000 1001

^:相反为真,相同为假

8^9:

0000 1000

0000 1001 ^

---------------

0000 0001

~:按位取反 包含符号位

~2:0000 0010 ---->1111 1101(补码-1)---->1111 1100(反码符号位不变,其余为按位取反)--->1000 0011(原码)

>>

8>>2: 0000 1000

0000 0010 2 右移:除以2的n次方(右移的位)

<<

8<<2: 0000 1000 左移:乘以2的n次方

0010 0000

三元运算符: 条件成立时的代码 if 判断 else 条件不成立时的代码

程序结构:

顺序结构

选择结构

循环结构

选择结构:

if关键字

最简单的if语句:

if 表达式:

代码1

索引:正向索引:下标从0开始

负数索引,下标从-1开始

字符串的切片:sname[start:end:step] [ )

sname:要操作的序列名称

start:表示切片的开始位置(包含自身),如果不去指定的话,默认从0开始。

end:表示切片的结束位置(不包含自身),如果不指定的话,默认是序列的长度

step:表示切片的步长,如果省略,默认为1

s[:] 切片切的是整个字符串

nanhang:步长为2,nnag 0 1 2 3 4 5 6

s[::-1]:字符串反转

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值