python学习笔记1

#1,注释
#单行注释
"""
多行注释(英文输入法双引号)
"""
'''
多行注释(英文输入法单引号)
'''
print("hello world")

输出效果:hello world
"""
2,变量
     变量命名规则:
     1,只能由字母或数字或下划线组成
     2,不能由数字开头(或纯数字)
     3,不要用中文
     4,不要用python关键字
     5,不要太长
     6,最好要有实际意义eg.name="鱼鱼"
     7,推荐使用下划线或驼峰命名
"""
a=24
a_=24
a1=24
_=24
print(a,a_,a1,_)
24 24 24 24
'''
3,常量
     常量命名规则:
     1,最好用大写字母eg.PI=3.1415926
'''
PI=3.1415926
print(PI)

#不存在绝对意义上的常量
PI=3    #能够改变PI的值
print(PI)  
3.1415926
3
"""
4,数据类型
     1,数字:+-*/ (eg.int,float)
     2,文字:字符串
                  表示方式:''或""或''''''或""""""
                  操作:+:+两端数据类型一定要相同
                        *:一个字符串只能乘以数字,表示重复次数
     3,布尔(bool):条件判断
                  布尔值主要有两个:True  False(判断真假)
"""
a=2
b=2.5  #数字:整数,小数
print(a+b,a*b,a/b,a%b)

#字符串
s="鱼鱼"
print(s)    #print后自动换行
print('鱼鱼','''可爱''')  #两个输出之间自动空一格

a="""啦啦啦啦啦"""
print(a)

print(s+a,s*3)   

#布尔
print(1>2)
print(1<2)

#可以直接赋布尔值
c=True
print(c)
4.5 5.0 0.8 2.0
鱼鱼
鱼鱼 可爱
啦啦啦啦啦
鱼鱼啦啦啦啦啦 鱼鱼鱼鱼鱼鱼
False
True
True
#输入函数input("提示语")
a=input("请输入第一个数:")    
b=input("请输入第二个数:")
print(a+b)

#注意!!!!input得到的结果一定是字符串
print(type(a),type(b))

#将字符串转化为其他数据类型
print(int(a)+int(b))
请输入第一个数:1
请输入第二个数:2
12
<class 'str'> <class 'str'>
3
a=input("请输入第一个字符串")
b=input("请输入第二个字符串")   #直接输入字符串
print(a+b)        #字符串相加
请输入第一个字符串鱼鱼
请输入第二个字符串可爱呀
鱼鱼可爱呀
'''
条件判断
1,if的第一种语法
   if 条件:
       代码1
       代码2
       ...
    注意!!!python中if语句多条代码不用{},只要对齐即可,可以使用tab键缩进
2,if的第二种语法
   if 条件:
       代码1
   else:
       代码2
3,if语句可以嵌套
   if 条件:
       if 条件:
           代码1
       else:
           代码2
   else:
       代码3
4,
   if 条件1:
       代码1
   elif 条件2:(不满足条件1时)
       ...
    ...
   else:
       ...
    
'''
a=int(input("请输入你的预算:"))
if a>50:
    if a>100:
       print("吃全家桶")
    else:
       print("随便吃个套餐")
else:
    print("回家自己做吧")

if a>100:
       print("吃全家桶")
elif a>50:
       print("随便吃个套餐")
else:
       print("回家自己做吧")
       
请输入你的预算:60
随便吃个套餐
随便吃个套餐
"""
循环
while 条件:
        代码
for 变量 可迭代对象(字符串):
        代码
把可迭代对象中的每一项内容拿出来,挨个的赋值给变量,每一次赋值都要执行一次循环体(代码)
"""
i=0
s=0
#从1加到10
while i<10:
    i+=1    #注意没有i++的写法
    s+=i
print(s)

i=0
s=0
#1-2+3-4+5-...-100
while i<100:
    i+=1
    if i%2==0:
        s-=i
    else:
        s+=i
print(s)

#break让当前循环立即停止
while True:
    content=input("请输入你想说的话:")
    if content=="bye":
        break
#continue
    if content=="onemore":
        continue
    print(content)

    
i=0
for i in range(0,5):    #for循环数数必须通过range(a,b,c),a是起点,b是终点(不包含),c是步长
    print("鱼鱼")
    i+=1
#range(1,10,2)=1,1+1*2,1+2*2,1+3*2,1+4*2=1,3,5,7,9
#range(1,5)=1,2,3,4(步长默认为1,终点不包括)

s="yuyuissocute"
for i in s:
    print(i)
55
-50
请输入你想说的话:bye
鱼鱼
鱼鱼
鱼鱼
鱼鱼
鱼鱼
y
u
y
u
i
s
s
o
c
u
t
e
#pass:代码占位,代码完整性,防报错
a=10
for i in range(0,a):
    pass   #没想好写啥,把pass放这防报错
'''
基本数据类型:
int整型      在某一个特定区间内可以清楚表述,有限
float浮点型  在任一个特定区间内都不能清楚表述,无限(计算机表述也会有误差)
bool布尔型(True或False)

基础数据类型之间的转化:
bool(),int(),float()
'''
print(10/3)   #以5结尾

a=0    #在Python中所有的非零数字都是True,零是False
b=bool(a)
print(type(b))
print(b)

# while 1:   #死循环,恒为真

s=" " #在python中,所有费控字符串都是True,空字符串是False
print(bool(s))
s=""
print(bool(s))

#综上,在Python中,空的东西bool值都是False,不空的东西bool值都是True
print(bool([])) #[]为空列表

while 1:
    content=input("请输入你想说的话:")
    if content:
        print(content)   
    else:
        break
3.3333333333333335
<class 'bool'>
False
True
False
False
请输入你想说的话:yuyu
yuyu
请输入你想说的话:

#Python中空格,\n,\t都为空

#字符串    (%s字符串占位,%d数字占位)
#1,字符串的格式化
name=input("请输入你的名字:")
age=input("请输入你的年龄:")
s0="他是%s"%name
s1="他是%s,今年%s岁"%(name,age)
s2="他是{},今年{}岁".format(name,age)
s3=f"他是{name},今年{age}岁"  #f-string  推荐使用
print(s0)
print(s1)
print(s2)
print(s3)
#2,索引和切片

#索引:按照位置提取元素
s="yuyu"
print(s[3])  #从左往右0,1,2...
print(s[-1])   #从右往左...-2,-1

#切片:从字符串中提取一部分内容
print(s[1:3])  #[a:b] a为起点,b为终点(不包括)
print(s[:3])    #默认表示0开始
print(s[1:])    #默认表示3结束
print(s[:])
print(s[-4:-1])  #[-a:-b] -a为起点,-b为终点(不包括)

#可以给切片添加步长来控制切片的方向
print(s[::-1])  #反向
请输入你的名字:yuyu
请输入你的年龄:24
他是yuyu
他是yuyu,今年24岁
他是yuyu,今年24岁
他是yuyu,今年24岁
u
u
uy
yuy
uyu
yuyu
yuy
uyuy
#3,字符串的常规操作
#字符串的操作一般不会对原字符串产生影响,一般是返回一个新字符串
#3.1字符串大小写转换
s="python"
print(s.capitalize())   #首字母大写
print(s)

s="i have a dream"     
print(s.title())      #每个单词的首字母都大写

s="YUYU"
print(s.lower())      #每个字母都小写

s="yuyu"
print(s.upper())       #每个字母都大写

#应用upper()   忽略大小写验证
code="YuYu"
user_input=input("请输入验证码:")
if code.upper()==user_input.upper():
    print("验证码正确")
else:
    print("验证码错误")
Python
python
I Have A Dream
yuyu
YUYU
请输入验证码:yuyu
验证码正确
#替换和切割
s="    y u y u"
print(s.strip())  #忽略左右两端的空白(\t,\n,空格),保留中间的空白
#e.g
username=input("请输入用户名:")
userword=input("请输入密码:")
if username.strip()=="admin":    #防止用户在末尾误输入看不见的空格
    if userword=="123456":
        print("登陆成功")
    else:
        print("密码错误")
else:
    print("该用户不存在")
    
s="yuyu"  
print(s.replace("y","Y"))     #替换
s="    y u y u"
print(s.replace(" ",""))      #去除所有空格

s="yuyusocute"
print(s.split("u"))        #切割(写出用什么来切),用什么切,就会损失什么
print(type(s.split("u")))   #切割出的结果会放在列表中
y u y u
请输入用户名:y
请输入密码:
该用户不存在
YuYu
yuyu
['y', 'y', 'soc', 'te']
<class 'list'>
#查找和判断
s="yuyusocutecute"
print(s.find("cute"))   #返回出现的首位置,不存在返回-1
print(s.index("so"))    #返回出现的首位置,不存在则报错
print("so" in s)        #True则存在,False则不存在(in可以做条件上的判断)
print("so" not in s)    #与上述相反

#eg
name=input("请输入你的名字:")
if name.startswith("张"):
    print("你姓张")
else:
    print("你不姓张")

money=input("请输入你的余额:")
if money.isdigit():     #isdigit()判断字符串是否由整数组成,isdecimal()判断字符串是否由小数组成
    money=int(money)
    if money==0:
        print("余额不足")
    else:
        print("余额:",money)
else:
    print("输入错误")
6
4
True
False
请输入你的名字:张大
你姓张
请输入你的余额:lala
输入错误
#len()长度
s="yuyu"
print(len(s))

#join()拼接   与split()相反
s=["yuyu","so","cute"]
s1="_".join(s)
s2="".join(s)
print(s1,s2)
4
yuyu_so_cute yuyusocute
#列表 [] 能够储存大量的东西,用逗号隔开
a=["yuyu",[1,2,'b'],'socute',{0}]

#特性:
#1,像字符串一样也有索引和切片
print(a[0])
print(a[0:3:2])

#2,索引超过边界会报错
#print(a[10])     报错:list index out of range

#3,可以用for循环进行遍历
for item in a:
    print(item)

#4,可以用len()求列表长度
print(len(a))
yuyu
['yuyu', 'socute']
yuyu
[1, 2, 'b']
socute
{0}
4
#列表的增删改查    改变了原列表
lst=[]
#1,向列表中增加内容

#append()追加
lst.append("yuyu")
lst.append("so")
lst.append("cute")   #append()只能一次增加一个且加在列表末尾
print(lst)

#insert() 插入
lst.insert(0,"lala")   #insert(欲插入位置,元素)  原有元素及其后元素自动后移
print(lst)

#extend()合并两个列表,批量添加
lst.extend([1,2,3,'a'])
print(lst)

#2,删除
#pop() 
a=lst.pop(2)   #pop(欲删除元素位置)  其后元素自动前移
print(lst)
print(a)       #返回被删除元素

#remove()
lst.remove("yuyu")  #remove(欲删除的元素)
print(lst)

#3,修改
#直接用索引进行修改操作
lst[0]="yuyu"
print(lst)

#4,查询
#直接用索引进行查询操作
print(lst[1])

#eg 将所有姓“张”的改成姓“王”
list1=["张三","李四","王五","张大","张二"]
list2=[]
for i in list1:
    if i.startswith("张"):
        i=list(i)
        i[0]='王'
        i="".join(i)
        print(i)
    list2.append(i)
print(list2)
['yuyu', 'so', 'cute']
['lala', 'yuyu', 'so', 'cute']
['lala', 'yuyu', 'so', 'cute', 1, 2, 3, 'a']
['lala', 'yuyu', 'cute', 1, 2, 3, 'a']
so
['lala', 'cute', 1, 2, 3, 'a']
['yuyu', 'cute', 1, 2, 3, 'a']
cute
王三
王大
王二
['王三', '李四', '王五', '王大', '王二']
#eg 将所有姓“张”的改成姓“王”
list1=["张三","李四","王五","张大","张二"]
for i in range(len(list1)):   #range(0,len(list))的取值范围是0~len(list)-1
    item=list1[i]
    if item.startswith("张"):
        #换姓
        new_name="王"+item[1:]
        print(new_name)
        #新名字放回列表(需要索引)
        list1[i]=new_name
print(list1)
王三
王大
王二
['王三', '李四', '王五', '王大', '王二']

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值