python基础(2)2020年4月27日

《python学习笔记》

一、入门基础知识

1. cpu 内存 硬盘 操作系统

​ cpu:计算机的运算和计算中心,相当于人类大脑.飞机
​ 内存:暂时存储数据,临时加载数据应用程序,4G,8G,16G,32G
​ 速度快,高铁,断电即消失。造价很高
​ 硬盘:磁盘,长期存储数据。D盘,E盘,文件,片儿,音频等等。500G,1T。
​ 汽车,造价相对低。
​ 操作系统:一个软件,连接计算机的硬件与所有软件之间的一个软件。

2.python的历史

​ Python崇尚优美、清晰、简单,

​ python2x,python3x源码区别:

​ python2x:

​ C,java,大牛: 重复代码多,冗余,代码不规范。

​ python3x: 源码规范,清晰,简单。

3.python的编程语言分类(重点

​ if 3 > 2:

​ 编译型:

​ 将代码一次性全部编译成二进制,然后再执行。

​ 优点:执行效率高。

​ 缺点:开发效率低,不能跨平台。

​ 代表语言:C

​ 解释型:

​ 逐行解释成二进制,逐行运行。

​ 优点:开发效率高,可以跨平台。

​ 缺点:执行效率低。

​ 代表语言:python。

4.python的种类

  • Cpython:官方推荐解释器。可以转化成C语言能识别的字节码。
  • Jpython: 可以转化成Java语言能识别的字节码。
  • Ironpython:可以转化成.net语言能识别的字节码
  • pypy: 动态编译。

5.安装python解释器流程:

  1. 官网查找版本

    选择版本

  2. 手动添加环境变量

  3. 变量 (重点)

    1. why:
    print(1+2+3+4+5)
    
    print((1+2+3+4+5)*3/2)
    
    print((((1+2+3+4+5)*3/2)+100)/24)
    
    x = 1+2+3+4+5
    y = x*3/2
    z = (y + 100) / 24
    print(x,y,z)
    
    x8 = 100  # True
    b__ = 12  # True
    4g = 32  # False
    _ = 11  # True
    *r = 12  # False
    r3t4 = 10  # True
    t_ = 66  # True
    
    # 变量的小高级:
    age1 = 18
    age2 = age1
    age3 = age2
    age2 = 12
    # print(age1,age2,age3)  # 18 12 18 
    
    

    what:x y z 变量:代指一些内容、

    how:

    • 变量全部由数字,字母下划线任意组合。
    • 不能以数字开头。
    • 不能是python的关键字。
      • ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
    • 要具有描述性。name= '太白金星' sex
    • 不能使用中文。
    • 不能过长。
    • 推荐
      • 驼峰体:AgeOfOldboy = 73
      • 下划线:age_of_oldboy = 73

    where:

    ​ 代指一些复杂过长的数据。

    content = 'sfkdsjalfjdslfksdjkfhsdajkfhsdjkfshdfsdkfhsdkfjsldakfjsdaflsdafjshdafjkdsfhkjsdlf

    fskdfhsdkfhsdkjfhsdkjfhskdfhsdkjfhsdkfkhsdflsafksjdfhskdajfhskdjfhskda'

6.常量

why :生活中一直不变的:π,身份证号码,历史发生的时间

what: 常量:一直不变的量。python中没有真正的常量,为了应和其他语言的口味,全部大写的变量称之为常量。

how: 将变量全部大写,放在文件的最上面。

where: 设置一些不变的量 :身份证号,id,

​ BIRTH_OF_CHINA = 1949

# 常量
# 约定俗成不能改变
NAME = '太白'
# print(NAME)

7.注释(重点

why:文言文中对一些晦涩难懂的成语或者经典的出处 解释说明。便于你理解。

​ 便于你理解对方的代码,自己的代码。

what: 注释

how:

c

where:

​ 难以理解的代码后面,加注释。

​ 函数,类,文件都需要注释,解释说明。

8.基础数据类型初识(重点

why:

​ 人类接触一些信息会做一些比较精准的划分。数字,汉字,英文......

​ 100, '中国' 机器是很傻的你要是不给他区分,他是分辨不出来的。

​ 我们告诉计算机:

​ 100 ,102 ,就是数字(int), + - * / ....

​ '中国','hello' ,'萨瓦迪卡' 文字,:记录信息,描述信息等等。

​ [1, 2, 3, '中国'] 列表,他能做他相应的一些操作即可。

​ ....... python的基础数据类型。

​ int(整型): 1 ,2, 123, ....

+ - * / . 运算
  • i = 100
    i1 = 2
    i2 = i*i1
    print(i2)
    

​ str: 凡是用引号引起来的数据就称之为字符串。

​ '', "", ''' ''' """ """

 # str:
 s1 = 'day01'
 s2 = "Python22期"
 s2 = '''Python22期'''
 
 # 单双引号可以配合使用
 
 # content = 'I am taibai, 18 year old'
 # content = "I'm taibai, 18 year old"
 
 # 三引号:换行的字符串
 msg = '''
 今天我想写首小诗,
 歌颂我的同桌,
 你看他那乌黑的短发,
 好像一只炸毛鸡。
 '''
 # print(msg)
 
 # str 可以否加减乘除? + *
 # str + str  *** 字符串的拼接
 s1 = 'alex'
 s2 = 'sb'
 # print(s1 + s2)
 
 
 # str * int
 # s1 = '坚强'
 # print(s1*8)

​ bool :True False

​ 判断变量指向的是什么数据类型? type()

 # bool : True False
 # print(2 > 1)
 # print(3 < 1)
 # print(True)
 # print('True')
 
 # s1 = '100'
 # s2 = 100
 # print(s1,type(s1))
 # print(s2,type(s2))

9. 用户交互input

why: 网页上,app 输入账号与密码。

what: 用户交互input

how:

# input: 出来的全部都是字符串类型。
username = input('请输入用户名:')
password = input('请输入密码:')
print(username,type(username))
print(password,type(password))

10. 流程控制语句if

why: 生活中选择,回家,n条路,你走那条路,取决于心情。

what: if。

how:

  • 基本结构:

  • if 条件:
        结果
        
    # c: if{条件}{结果}
    
  1. 单独if

    print(111)
    if 2 < 1:
        print(666)
        print(333)
    print(222)
    
  2. if else 二选一

    s1 = '100'
    i1 = int(s1)
    print(i1,type(l1))
    
    age = input('请输入年龄:')
    if int(age) > 18:
        print('恭喜你,成年了')
    else:
        print('小屁孩儿')
    
    
  3. if elif elif .... 多选一

    num = int(input('猜点数:'))
    
    if num == 1:
        print('晚上请你吃饭')
    elif num == 3:
        print('一起溜达')
    elif num == 2:
        print('请你大宝剑')
    
  4. if elif elif .... else 多选一

    num = int(input('猜点数:'))
    
    if num == 1:
        print('晚上请你吃饭')
    	
    elif num == 3:
        print('一起溜达')
    	
    elif num == 2:
        print('请你大宝剑')
    else:
        print('太笨了....')
    
    print('组合')
    
  5. 嵌套的if

    username = input('请输入用户名:')
    password = input('请输入密码:')
    code = 'qwer'
    your_code = input('请输入验证码:')
    
    if your_code == code:
        if username == 'taibai' and password == '123':
    	    print('登录成功')
        else:
    	    print('账号或者密码错误')
    else:
        print('验证码错误')
    

明日讲课:https://www.cnblogs.com/jin-xin/p/9076242.html

明日讲课内容这篇博客:https://www.cnblogs.com/jin-xin/articles/10563881.html

11.while 循环

# while 用法
#break 直接终止循环
#continue 终止本次循环,继续下一次循环
#使用了字符串格式化
# while   else:
count = 1
while count <= 3:
    username = input('用户名:')
    password = input('密码:')
    code = 'qwer'
    yourcode = input('验证码:')
    if yourcode.upper() == code.upper():
        if username == "quezesheng" and password == '123':
            print('登入成功')
            break
        else:
            print('用户名或密码错误。还剩下 %s机会'%(3-count))  #使用了字符串格式化
    else:
        print('验证码错误。')
    count = count + 1
    print(count-1,username,password,yourcode)
print("你输错三次,10分钟后再试。")
#1-2+3-4+5-6+....+99-100
count=1
s=0
while count<100:
    if count % 2 == 0:
        s=s-count
    else:
        s=s+count
    count +=1
print(s)
# 猜加法结果
count = 0
while True:
    a = int(input("请输入第1个数字:"))
    b = int(input("请输入第2个数字:"))
    HE= int(input("你猜加法结果是多少?"))
    msg = '''-----------------'''
    c = a+b
    if HE==c:
        print(msg)
        print('加法算式:', a, '+', b, '=', a + b,'恭喜你答对了,加1分!')
        count+=1
    else:
        print(msg)
        print('你答错了,扣1分!')
    print('你的得分是:',count,"分。")
    print('再来一次吧')
    print(msg)
# 猜减法结果
count = 0
while True:
    a = int(input("请输入第1个数字:"))
    b = int(input("请输入第2个数字:"))
    CHA= int(input("你猜减法结果是多少?"))
    msg = '''-----------------'''
    c = a-b
    if CHA==c:
        print(msg)
        print('加法算式:', a, '-', b, '=', a - b,'恭喜你答对了,加1分!')
        count+=1
    else:
        print(msg)
        print('你答错了,扣1分!')
    print('你的得分是:',count,"分。")
    print('再来一次吧')
    print(msg)

12.格式化化模板输出方法

#格式化输出公共模板
name = input("请输入姓名:")
age = input("请输入年龄:")
job = input("请输入职业:")
hobby = input("请输入爱好:")
# % 占位符 s→str
msg ='''-------- info of %s --------
name : %s
age : %s
job : %s
hobby : %s
-------- end --------
'''%(name,name,age,job,hobby)
print(msg)

格式化输出

  • 当你遇到这样的需求:字符串中想让某些位置变成动态可传入的,首先要考虑到格式化输出。

13.运算符号

算数运算符 + -,比较运算符 > ==,赋值运算符=,+=,逻辑运算符,and or, 成员运算符

# 运算符
a=10
b=3
c = a**b   #求幂
d = a//b #取整
e = a%b #求余
print("a=",a,";b=",b,";c=",c,";d=",d,";e=",e)
cout=1
cout+=1 #相当于count=count+1
print(cout)
# 1 在没有()的情况下,优先级:not > and > or,同一优先级从左至右依次计算
# 情况1:两边都是比较运算
print(2 > 1 and 3 < 4 or 4 > 5 and 2 < 1)
print(True or False)

# 情况2:两边都是整数
x or y , x为真,值就是x,x为假,值是y

print(4 and 2 and 3)  #结果3
print(4 or 2 or 3)  #结果4
print(1 and 2 or 4 and 3) #结果2


# str ---> int  : 只能是纯数字组成的字符串
s1 = '00100'
print(int(s1))

# int ----> str
i1 = 100
print(str(i1),type(str(i1)))

# int  ---> bool  : 非零即True ,0为False。
i = 0
print(bool(i))
# bool ---> int
print(int(True))  # 1
print(int(False))  # 0

14.编码的认识

'中国12he' : GBK: 8个字节

'中国12he' : UTF-8: 10个字节

8bit = 1byte
1024byte = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB
1024TB = 1PB
1024TB = 1EB
1024EB = 1ZB
1024ZB = 1YB
1024YB = 1NB
1024NB = 1DB  

15.Python中常用的数据类型有多种,如下:

 整数(int) ,字符串(str),布尔值(bool),列表(list),元组(tuple),字典(dict),集合(set).

  • int。数字:主要用于运算。1 ,2,3...
  • bool。判断真假:True, False.
  • str。简单少量的储存数据,并进行相应的操作。name = 'alex',
  • tuple。只读,不能更改。(1,'alex')
  • list:大量有序数据,[1,'ses',True,[1,2,3],{'name':'jinxin'}]
  • dict:大量数据,且是关联性比较强的数据

16.二进制有效位数

# int 
# #bit_length
i =42
print(i.bit_length())  #6个二进制有效位数

17.字符串索引和切片

字符串的索引与切片。

组成字符串的字符从左至右,依次排列,他们都是有顺序的,就好比是部队的队列,从左至右依次报号(从零开始) :0,1,2,3....

a = 'ABCDEFGHIJK'
print(a[0:3])  # print(a[:3]) 从开头开始取0可以默认不写
print(a[2:5])
print(a[:]) #默认到最后
print(a[:-1]) # -1 是列表中最后一个元素的索引,但是要满足顾头不顾腚的原则,所以取不到K元素
print(a[:5:2]) #加步长
print(a[-1:-5:-2]) #反向加步长
#数字符串中的元素出现的个数。
a1 = 'ABCADEFGHIJK'
ret3 = a1.count("A",0,4) # 可切片
print(ret3)

a4 = "dkfjdkfasf54"
#startswith 判断是否以...开头
#endswith 判断是否以...结尾
# ret4 = a4.endswith('jdk',3,6)  # 顾头不顾腚
# print(ret4)  # 返回的是布尔值
# ret5 = a4.startswith("kfj",1,4)
# print(ret5)

#split 以什么分割,最终形成一个列表此列表不含有这个分割的元素。
# ret9 = 'title,Tilte,atre,'.split('t')
# print(ret9)
# ret91 = 'title,Tilte,atre,'.rsplit('t',1)
# print(ret91)

#format的三种玩法 格式化输出
res='{} {} {}'.format('egon',18,'male')
res='{1} {0} {1}'.format('egon',18,'male')
res='{name} {age} {sex}'.format(sex='male',name='egon',age=18)

#strip
name='*barry**'
print(name.strip('*'))
print(name.lstrip('*'))
print(name.rstrip('*'))

#replace
name='alex say :i have one tesla,my name is alex'
print(name.replace('alex','SB',1))

#####is系列
name='taibai123'
print(name.isalnum()) #字符串由字母或数字组成
print(name.isalpha()) #字符串只由字母组成
print(name.isdecimal()) #字符串只由十进制组成


#############下面这些方法在数据类型补充时会讲到,现在不讲####################
#寻找字符串中的元素是否存在
# ret6 = a4.find("fjdk",1,6)
# print(ret6)  # 返回的找到的元素的索引,如果找不到返回-1

# ret61 = a4.index("fjdk",4,6)
# print(ret61) # 返回的找到的元素的索引,找不到报错。

#captalize,swapcase,title
print(name.capitalize()) #首字母大写
print(name.swapcase()) #大小写翻转
msg='taibai say hi'
print(msg.title()) #每个单词的首字母大写

# 内同居中,总长度,空白处填充
ret2 = a1.center(20,"*")
print(ret2)
s1="woshquezesheng"
print('wo' in sl)
print('wo2' not in sl)

#len :获取字符串总个数
# for 循环
s = "woshquezeshe22233ng"
index = 0
print(len(s))
while index <len(s):
    print(s[index])
    index+=1

s = "woshquezeshe22233ng"
print(s)
for i in s:
    print(i)

字符串的索引与切片。

组成字符串的字符从左至右,依次排列,他们都是有顺序的,就好比是部队的队列,从左至右依次报号(从零开始) :0,1,2,3....

a = 'ABCDEFGHIJK'
print(a[0:3])  # print(a[:3]) 从开头开始取0可以默认不写
print(a[2:5])
print(a[:]) #默认到最后
print(a[:-1]) # -1 是列表中最后一个元素的索引,但是要满足顾头不顾腚的原则,所以取不到K元素
print(a[:5:2]) #加步长
print(a[-1:-5:-2]) #反向加步长
#数字符串中的元素出现的个数。
a1 = 'ABCADEFGHIJK'
ret3 = a1.count("A",0,4) # 可切片
print(ret3)

a4 = "dkfjdkfasf54"
#startswith 判断是否以...开头
#endswith 判断是否以...结尾
# ret4 = a4.endswith('jdk',3,6)  # 顾头不顾腚
# print(ret4)  # 返回的是布尔值
# ret5 = a4.startswith("kfj",1,4)
# print(ret5)

#split 以什么分割,最终形成一个列表此列表不含有这个分割的元素。
# ret9 = 'title,Tilte,atre,'.split('t')
# print(ret9)
# ret91 = 'title,Tilte,atre,'.rsplit('t',1)
# print(ret91)

#format的三种玩法 格式化输出
res='{} {} {}'.format('egon',18,'male')
res='{1} {0} {1}'.format('egon',18,'male')
res='{name} {age} {sex}'.format(sex='male',name='egon',age=18)

#strip
name='*barry**'
print(name.strip('*'))
print(name.lstrip('*'))
print(name.rstrip('*'))

#replace
name='alex say :i have one tesla,my name is alex'
print(name.replace('alex','SB',1))

#####is系列
name='taibai123'
print(name.isalnum()) #字符串由字母或数字组成
print(name.isalpha()) #字符串只由字母组成
print(name.isdecimal()) #字符串只由十进制组成


#############下面这些方法在数据类型补充时会讲到,现在不讲####################
#寻找字符串中的元素是否存在
# ret6 = a4.find("fjdk",1,6)
# print(ret6)  # 返回的找到的元素的索引,如果找不到返回-1

# ret61 = a4.index("fjdk",4,6)
# print(ret61) # 返回的找到的元素的索引,找不到报错。

#captalize,swapcase,title
print(name.capitalize()) #首字母大写
print(name.swapcase()) #大小写翻转
msg='taibai say hi'
print(msg.title()) #每个单词的首字母大写

# 内同居中,总长度,空白处填充
ret2 = a1.center(20,"*")
print(ret2)

18.字符串2020年4月21日

# strip  :去除空白,空格 ,\n  \t
name='alex \n say :i have one tesla,my name is\talex'
print(name)
print(name.strip())

19.*如何学习python** 每天400行代码

  1. 确实非常困难。如何解压?如何学习。

    python,语言,中文,英语。

    华尔街英语:母式英语。

    中国人教的英语:在国外很难生存。

    听说读写练。

    input output

    听 写(练)

    读 说

    2岁的孩子:

听, 说 纠正

你们现在的比例: 听:3.5 + 2 + 1 = 6.5 练:2~3. 纠正:0.5

120行 *120:14400

  1. 上午要认真听!!!

  2. 下午不要听视频,抓紧时间放在练习代码上,写作业,代码251行。

  3. 讨论(下周开始)。

image-20200421112145707

#每天400行代码,100天成为初级程序员,1000天成为高级程序员。进阶:模仿--->改动--->创新。
#字符串操作
# strip  :去除空白,空格 ,\n  \t
#多行注释:  ctrl+/
name='alex \n say :i have one tesla,my name is\talex'
print(name)
print(name.strip())
msg1='''----------------开始--------------'''
msg='''---------------end--------------'''

print(msg1)  #打印开始线
# 索引
s='我是阙泽胜ABCabc12 34567 89'
print('1:',s[0])
print('2:',s[1])
print('3:',s[-1])
print('4:',s[:3])
print('5:',s[3:])
print('6:',s[1:3])
print('7:',s[:3:2])
print('8:',s[-1:-4:-1])
print('9:',s[-1:-len(s):-1])  #逆序

print(msg)   #打印结束线

# 字符串常用的操作方法
#upper lower
#startswith endswith
#split 默认按照空格分隔  可以指定分隔符
#strip :去除空白,空格 ,\n  \t
#count
#.isalnum   isdecimal
# format
#join
#replace
#len()获取数据的元素的个数
#for
print(msg1)  #打印开始线
print(s.upper())
print(s.lower())
print(s.startswith('a'))
print(s.endswith('789'))
s1=s.split(' ')
print(s1)

s2='aa122a'
print(s2)
print(s2.strip(" "))
print(s2.isalnum())
print(s2.isdecimal())
print(s2.count('a'))
print(s.format())

for i in s2:
    print(i)
print(s2.replace('a','b'))
print(msg)   #打印结束线

s = '321'
for i in s:
    print('倒计时%s秒'%i)
print('出发!')

20.format格式输出

#构造代码:最终结果输出为:“倒计时3秒”,“倒计时2秒”,“倒计时1秒”,“出发!”

# s = '321'
# for i in s:
#     print('倒计时%s秒'%i)
# print('出发!')

s = '321'
for i in s:
    print('倒计时{}秒'.format(i))
print('出发!')

#format用法
print('{} {}'.format('hello','world'))  # 不带字段
print('{} {} {}'.format('abc','123','aaaa'))
print('{1} {0}'.format('hello','world'))  # 带数字编号
print('{2}{0}{1}'.format('a','b','c'))
print('{0} {1} {0}'.format('hello','world'))  # 打乱顺序
print('{1} {1} {0}'.format('hello','world'))
print('{a} {tom} {a}'.format(tom='hello',a='world'))  # 带关键字
print('{a}{b}{a}{b}'.format(a='A',b='B'))

21.列表的初识**

  • why:int bool str:'123 True 太白'
    • str: 存储少量的数据。
    • str:切片还是对其进行任何操作,获取的内容全都是str类型。存储的数据单一。
  • what:list
    • l1 = [100, 'alex',True,[1, 2, 3]] 承载任意数据类型,存储大量的数据。
    • python常用的容器型数据类型。list 列表,其他语言:Java: 数组。
    • 列表是有序的,可索引,切片(步长)。

22.索引,切片,步长。**

li = [100, '太白', True, [1, 2, 3]]
# 索引
# print(li[0], type(li[0]))
# print(li[1],type(li[1]))
# print(li[-1])

# 切片 (顾头不顾腚)
# print(li[:2])

相关练习题:

li = [1, 3, 2, "a", 4, "b", 5,"c"]
通过对li列表的切片形成新的列表l1,l1 = [1,3,2]
通过对li列表的切片形成新的列表l2,l2 = ["a",4,"b"]
通过对li列表的切片形成新的列表l4,l4 = [3,"a","b"]
通过对li列表的切片形成新的列表l6,l6 = ["b","a",3]

23.列表的增删改查

# 列表的创建
# 方式一
# l1 = [1, 2, 'Alex']

# 方式二
# l1 = list()
# l1 = list('fhdsjkafsdafhsdfhsdaf')
# print(l1)

# 方式三:列表推导式 后面讲

# 增删改查
l1 = ['太白', '女神', 'xiao','吴老师', '闫龙']
# 增:
# append:追加
# l1.append('xx')
# print(l1.append('xx'))  # 不能打印它
# print(l1)

# 举例:
# l1 = ['太白', '女神', '吴老师', 'xiao', '闫龙']
# while 1:
#     name = input('请输入新员工姓名:(Q或者q退出程序)')
#     if name.upper() == 'Q': break
#     l1.append(name)
# print(l1)

# insert 插入
# l1.insert(2,'wusir')
# print(l1)
#extend 迭代着追加
# l1.extend('abcd')
# l1.extend(['alex',])
# l1.extend(['alex', 1, 3])
# print(l1)

# 删
# pop 按照索引位置删除
# l1.pop(-2)  # 按照索引删除 (返回的是删除的元素)
# print(l1.pop(-2))
# l1.pop()  # 默认删除最后一个
# print(l1)

# remove  指定元素删除,如果有重名元素,默认删除从左数第一个
# l1.remove('xiao')
# print(l1)

# clear(了解)
# l1.clear() # 清空
# print(l1)

# del
    # 按照索引删除
# del l1[-1]
# print(l1)
    # 按照切片(步长)删除
# del l1[::2]
# print(l1)

# 改
# 按照索引改值
# l1[0] = '男神'
# 按照切片改(了解)
# l1[2:] = 'fsdafsdafsdfdsfsadfdsfdsgsfdag'
# print(l1)
# 按照切片(步长)(了解)
# l1[::2] = 'abc'
# l1[::2] = 'abcd'
# print(l1)

# 查:
# 索引,切片(步长)
# for i in l1:
#     print(i)
  1. 列表的嵌套

    l1 = [1, 2, 'taibai', [1, 'alex', 3,]]
    # 1, 将l1中的'taibai'变成大写并放回原处。
    # l1 = [1, 2, 'taibai', [1, 'alex', 3,]]
    # l1[2]=l1[2].upper()
    # print(l1)
    # 2,给小列表[1,'alex',3,]追加一个元素,'老男孩教育'。
    # l1[3].append('老男孩教育')
    # print(l1)
    # 3,将列表中的'alex'通过字符串拼接的方式在列表中变成'alexsb'
    print(l1[-1][1])
    l1[-1][1]+='sb'
    print(l1)
    
    # 3,将列表中的'alex'通过字符串拼接的方式在列表中变成'alexsb'
    # print(l1[-1][1])
    # l1[-1][1]+='sb'
    # print(l1)
    # l1=['a','bb',123,['2q',123,[1,'aAc',3]]]
    # print(l1)
    # l1[3][2][1]=l1[3][2][1].upper()
    # print(l1)
    l1=(1,'abc',['que','alex',123,'shen',[23,56,'ze','sheng']],56)
    print(l1)
    l1[2][4][2]+='sb'
    print(l1)
    l1[2][1]=l1[2][1].upper()
    for i in l1:
        print(i)
    print(l1)
    
    
    

    24.元组(了解)

    • 只读列表。存大量的数据,可以索引,切片(步长), (100, '太白', True, [1, 2, 3])
  2. range: 类似于列表,自定制数字范围的数字列表

    1. 二进制与十进制之间的转换
      1. str bool int 转换 3. str具体操作方法:索引切片步长,常用操作方法, 4. for 循环
#元组.
# tu=(12,"rr",344,'dafaf')
# print(tu)
# del tu[0]
# for i in tu:
#     print(i)
#元组的应用:个人重要信息,密码,用户名等不想让别人删除
#元组的拆包,分别赋值
a,b=("agb",123)  #多一个少一个不行
print(a,b)

25.range: 类似于列表,自定制数字范围的数字列表

#range类似list,存数字的列表
# z=range(10)
# print(z)
# print(z[2])
for i in range(2,50,2):
    print(i)

26.多个数相加计数器

#实现多个整数加法计数器
content=input("请输入内容:")
#print(content)
l1=content.split('+')
#print(l1)
result=0
for i in l1:
    result=result+int(i)
print(content+'='+str(result))
#计算用户输入的信息有几个整数
while True:
    content=input('请输入加法算式:')
    # print(content)
    l1=content.split('+')
    result=0
    for i in l1:
        result=result+int(i);
    print(content+'='+str(result))

27.字典的初识

  • why
    • 列表可以存储大量,数据之间的关联性性不强。
    • 列表的查询速度慢。
  • what:容器数据类型:dict。

  • how

    • 数据类型的分类

      • 可变数据类型(不可哈希):list,dict。
      • 不可变数据类型(可哈希):str, bool, int, tuple
    • 字典:{}起来,以键值对存储数据的容器型数据类型

    • dic={"que":{'name':'zega','age':18,'job':'teacher'},  "22qi":{'lifei',"zgy","adfaf"}}
      print(dic)
      
    • 键必须是不可变的数据类型:int str

    • 值可以是任意数据类型\对象。

    • 字典在3.6x以前是无序。

    • 字典在3.6x版本在初始时候是有序的,但学术上还是认为是无序的。

    • 字典在3.7x以后是有序的。

    • 字典查询速度非常快,存储关联性大。

    • 字典缺点是:空间换时间。

  • 字典的创建方式

    • #字典的创建方式
      #方式一:
      dic =dict((('one',1),('two',2),('three',3)))
      print(dic)    #{'one': 1, 'two': 2, 'three': 3}
      
      #方式二:
      dic=dict(one=1,two=2,three=3)
      print(dic)  #{'one': 1, 'two': 2, 'three': 3}
      
      #方式三:
      dic=dict({'one1': 11, 'two1': 21, 'three1': 31})
      print(dic)
      
      

《Notepad++技巧》

1、复制当前行:ctrl+d

2、Ctrl+T 当行向上移动一行

3、Ctrl+L 删除当前行

4、Tab 插入缩进

5、Shift+Tab 删除缩进

6、CTRL+Q 注释/取消注释

《TYPORA技巧》

1. 大标题设置方法

一级标题ctrl+1,或# 一级标题

二级标题ctrl+2,## 二级标题

三级标题ctrl+3,### 三级标题

一级标题

二级标题

2. 序号标题

  1. 啊啊
    1. 按数字加点和空格就是这样
    2. 2号
      1. 按一个tab就是这样。
    3. 按shift+tab就是这样

3.列表设置

  • 实行圆圈通过+和空格和enter键
    • 空心圆通过-和空格和enter

4. 插入代码块

score=int(input("请输入分数:"))
if int(score)>100:
    print('我靠,最高分才100。。。')
elif int(score)>=90:
    print('A')
elif int(score)>=80:
    print('B')
elif int(score)>=70:
    print('C')
elif int(score)>=60:
    print('D')   
else:
     print('太笨了。。。E')

a=1
b=2

posted @ 2020-04-27 08:09  bison2020  阅读(120)  评论(0)    收藏  举报