日常作业加笔记

作业:

除3余2,除5余3,除7余2
pwd = int(input("请输入数字:"))
if pwd%3==2 and pwd%5==3 and pwd%7==2:
  print("正确") 
else:
  print("错误")

if的嵌套
例子:
g = int(input("请输入一个数字:"))
if g%3 == 2:
  if g%5 == 3:
    if g%7 == 2:
      print("正确")
    else:print("g%7 == 2 不满足")
  else:print("g%5 == 3 不满足")
else:print("g%3 == 2 不满足")

判断是不是闰年
除以4余数为0除以100余数为0除以400余数为0
g = int(input("请输入一个年份:"))
if g%4 == 0:
  if g%100 == 0:
    if g%400 == 0:
      print("是闰年")
    else:print("g%4 == 0 不满足,不是闰年")
  else:print("g%100 == 0 不满足,不是闰年")
else:print("g%400 ==  不满足,不是闰年")

笔记:

三目运算符

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

程序结构:

循序结构:

选择结构:

if 关键字

最简单的if语句:

if表达式:

代码块

else:

代码块

例子

除3余2,除5余3,除7余2
pwd = int(input("请输入数字:"))
if pwd%3==2 and pwd%5==3 and pwd%7==2:
  print("正确") 
else:
  print("错误")
if的嵌套


字符串切片:sanme[start:end:step]
          sname:要操作的序列名称
          start:表示切片的开始位置(包含自身),如果不去指定的话,默认从0开始
          end:表示切片的结束位置(不包含自身(左闭右开(包含左边不包含右边))),如果不指定的话,默认是序列的长度
          step:表示切片的步长,如果省略,默认为1
        

s[:]   切开的是整个字符串
nanhang:步长为2 nnag 0123456
s=nanhangjincheng
  0123456789
             -3-2-1
正向索引s[0:5]---->nanha(左闭右开)
负向索引s[-3:-1]--->en(左闭右开)
s[::-1]:字符串反转
s[-1:-3:-1]---->ne
例子
判断这句话是不是回文
例子:上海是海上
s = input("请输入一句话:")
if s[:] == s[::-1]:
  print("这句话是回文")
else:
  print("no")
列表:list [元素1,元素2,元素3,元素4,]
例子:[1,2,3,"hhahudhau",[3,4,5]]
列表里的元素数据类型可以不相同,列表可以相互嵌套
列表的数组下标从0开始
list列表里边的数可以改变   重新赋值
列表里的加法和乘法
例子
 list = [1,2,3,4,"jidasjida",[7,2,1,3]]
 print(len(list))
 list[1] = "jidasjida"
 print(list)
 list_1 = [1,2,3,4]
 list_2 = [2,4,3,4]
 list_3 = list_1 + list_2
 print(list_3)

 print("觉得我"*10)


append()向链表尾部追加元素
onsert(位置,追加的元素)向指定位置追加元素
sort()列表排序(只能排int)字母按照ASCII之进行排序,类型不能混淆
index:查找元素第一次在列表中出现的位置,如果没有这个元素则会
reverse():将列表元素顺序翻转
remove():通过元素来移除元素,如果元素不存在则抛出异常
count():统计元素在列表中的个数
clear():清除元素
copy():浅拷贝对象(拷贝)不等价于 = (引用传递),在堆内存中进行对象拷贝
extend():合并列表
pop():与append()相反删除最后一个元素
del():删除=
例子del(list[1])
del[list[1]]
循环结构:

8,位运算:基于二进制的运算
计算机的底层基于位运算的

& :两真则真,一假则假

|:两假则假,一真则真
例子:8|9
    8    0000 1000
|   9    0000 1001
------------------- 
         0000 1001
9

^:(异或)相反为真,相同为假 
例子:8^9
    8    0000 1000
^   9    0000 1001
------------------- 
         0000 0001
1

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

>> :右移: 除以2的n次方(右移的位)
例子:
8>>2: (8右移2位) 0000 1000 
                0000 0010 (2)
                         
                
<< :左移 :乘以2的n次方
+例子
8<<2:  (8左移2位) 0000 1000
                 0010 0000 (32)
                 
字节1byte = 8bit

二进制负数相加
8位的首位作为符号位  1代表负数 0代表正数
-3+2
    1000 0011

   +0000 0010
   ------------

 为了解决负数运算问题-----原码,反码,补码三个概念
 原码 :数值的标准的二进制
 反码 :符号位不变,其余位取反
 补码 :反码+1
 -3  原码       反码         补码
  1000 0011  1111 1100   1111 1101

2                        0000 0010
-----------------------------------

1000 0001 1111 1110   1111  1111
(符号位不变)
-1
正数不存在反码,补码,计算机底层的运算基于补码
-3+4
-3  原码       反码         补码
  1000 0011  1111 1100   1111 1101

4                        0000 0100
-----------------------------------

•                        1 0000 0001   (溢出直接砍掉)
•                        0000 0001(正数不存在反码,补码)
•                         
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值