Python学习笔记-1

一、变量


 1.什么是变量?

变指的是“变化” 量指的反映某种状态

等号(=)用来给变量赋值。

等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。

2.如何定义变量?
name='baoming'     # 字符串

age=18             # 整型变量

miles=1000.0       # 浮点型变量
 3.变量的命名规则?

变量名只能是 字母、数字、下划线的任意组合
变量名的第一个字符不能是数字
关键字不能声明为变量名

4.变量的定义方式?

驼峰式:

AgeOfZangshiyu=53

下划线:

age_of_zhangshiyu=53 #(python推荐方式)
 5.产生一个变量的三要素

name='shigozsr'

变量值:用来表示状态

              用变量名取变量值    print(name)

变量值的类型:用来表示不同的状态应该用不同类型的值去表示(数字:年龄,字符串:姓名)

              print(type(name))

变量值的ID号:

             print(id(name))

判断值是否相等:==

判断id是否相等:is

 


 二、数字类型


 1.整型:int

状态:等级,身份证号,年龄

level=10              #level=int(10)
print(type(level)) 
2.浮点型:float

状态:薪资,身高,体重

salary=3000.3         #salary=float(3000.3) 
print(salary,type(salary),id(salary))
3.字符串:

在引号里定义的一堆字符(单引号,双引号,三引号)

状态:描述性的内容,比如名字,性别,国籍

 例子:

gender='male'

print(type(gender))

例子:

info="my name is egon i'm a teacher" 

例子:

msg='''
aaa
bbb
ccc
'''

#PS:字符串只能跟字符串之间进行+或者*

4.列表:

在[]内,用逗号分隔开,存放多个任意类型的元素

状态: 有序存放多个值            

第一个索引是0,第二个索引是1,依此类推。

创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:

list1 = ['shigozsr', '18', male, ['世界很美好','edu',70]]

print(list1[0])

print(list1[3])

print(list1[3][0])
5.字典:

字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号{}中 ,但是key必须不可变类型格式如下所示

dict={'name':'shigozsr','age':18,'company':['世界很美好','edu',70]}
print(dict['age'])
print(dict['company'][2])

 

dict={'name':'shigozsr','age':18,'company':{'name':'张某','type':'edu','age':70}}
print(dict['company']['type'])
6.布尔类型:

True   False

状态:成立、不成立,用来做逻辑运算判断

age=18
print(age < 20)
#返回结果True 结果成立返回True

age=18
print(age < 10)
#返回结果False 结果不成立返回False

三、Python的可变类型和不可变类型


 

Python的每个对象都分为可变和不可变,主要的核心类型中,数字、字符串、元组是不可变的,列表、字典是可变的。

简单总结:

可变类型:

在id不变的情况下,value可以变,则称为可变类型。

>>> a=[1,2,3]
>>> id(a)
2774028374344
>>> a[0]=6
>>> a
[6, 2, 3]
>>> id(a)
2774028374344
 不可变类型:

value一旦改变,id也改变,则称为不可变类型。

>>> a=123
>>> id(a)
1764868992
>>> a=231
>>> id(a)
1764872448

 


 

四、格式化输出与用户交互


 

在Python3中input

其从标准输入中读入一个字符串,并自动忽略换行符。也就是说所有形式的输入按字符串处理,如果想要得到其他类型的数据进行强制类型转化。

1.格式化输出

例1:

name = input('name>>:')
hobby = input('hobby>>:')
print ('my name is %s my hobby is %s' %(name,hobby))

 

例2:

name = input('name>>:')
age = input('age>>:')
age=int(age)  #把age强制类型转化为int整型
print ('my name is %s my age is %d' %(name,age))

 


 

五、基本运算符

 


 算数运算符

简单的例子:4+1=5   4和5被称为操作数,“+”称为运算符

以下假设变量a为10,变量b为21:

运算符描述实例
+ 加 - 两个对象相加a + b 输出结果 31
 - 减 - 得到负数或是一个数减去另一个数a - b 输出结果 -11
 * 乘 - 两个数相乘或是返回一个被重复若干次的字符串a * b 输出结果 210
 / 除 - x 除以 yb / a 输出结果 2.1
 取模 - 返回除法的余数b % a 输出结果 1
** 幂 - 返回x的y次幂a**b 为10的21次方
// 取整除 - 返回商的整数部分9//2 输出结果 4 , 9.0//2.0 输出结果 4.0
比较运算符

以下假设变量a为10,变量b为20:

运算符描述实例
==等于 - 比较对象是否相等(a == b) 返回 False
!=不等于 - 比较两个对象是否不相等(a != b) 返回 True
>大于 - 返回x是否大于y(a > b) 返回 False
<小于 - 返回x是否小于y(a < b) 返回 True
>=大于等于 - 返回x是否大于等于y(a >= b) 返回 False
<=小于等于 - 返回x是否小于等于y(a <= b) 返回 True
赋值运算符

以下假设变量a为10,变量b为20:

运算符描述实例
=简单的赋值运算符c = a + b 将 a + b 的运算结果赋值为 c
+=加法赋值运算符c += a 等效于 c = c + a
-=减法赋值运算符c -= a 等效于 c = c - a
*=乘法赋值运算符c *= a 等效于 c = c * a
/=除法赋值运算符c /= a 等效于 c = c / a
%=取模赋值运算符c %= a 等效于 c = c % a
**=幂赋值运算符c **= a 等效于 c = c ** a
//=取整除赋值运算符c //= a 等效于 c = c // a
 逻辑运算
运算符描述实例
and布尔“与”,如果为False,x and y返回False,否则它返回y的计算值(a and b)返回true
or布尔“或”,如果x为True,它返回True,否则它返回y的计算值(a or b)返回true
not布尔“非”,如果x为True,返回False,如果x为False,它返回Truenot(a and b)返回false
 成员运算
运算符描述
in元素在对象里
not in元素不在对象里
 交叉赋值
m=1
n=2

temp=m
m=n
n=temp
print(m,n)
m,n=n,m
print(m,n)
  解压
l=[1,2,3,4]
a,b,c,d=l
print(a)
print(b)
print(c)
print(d)


a=l[0]
_=l[1]
_=l[2]
d=l[3]
a,_,_,d=l
print(a,d)

a,*_,d=l
print(a)
print(d)

 六、流程控制之if判断


 

 注意:

1、每个条件后面要使用冒号(:),表示接下来是满足条件后要执行的语句块。

2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。

 if语句举例:

age = input('请输入你的年龄:')
age = int(age)
if age <= 18:
    print('美好的年龄')
elif age <= 30:
    print('成年人')
else:
    print('老年人')
 if 嵌套

在嵌套 if 语句中,可以把 if...elif...else 结构放在另外一个 if...elif...else 结构中。

if 表达式1:
    语句
    if 表达式2:
        语句
    elif 表达式3:
        语句
    else:
        语句
elif 表达式4:
    语句
else:
    语句

 例子:

num=int(input("输入一个数字:"))
if num%2==0:
    if num%3==0:
        print ("你输入的数字可以整除 2 和 3")
    else:
        print ("你输入的数字可以整除 2,但不能整除 3")
else:
    if num%3==0:
        print ("你输入的数字可以整除 3,但不能整除 2")
    else:
        print  ("你输入的数字不能整除 2 和 3")

 七、流程控制之while循环


 while循环
while 条件:
代码1
代码2
代码3

例子:while循环
a = 100
 
sum = 0
counter = 1
while counter <= a:
    sum = sum + counter
    counter += 1
 
print("1 到 %d 之和为: %d" % (a,sum))

  例子:while循环使用else语句

在 while … else 在条件语句为 false 时执行 else 的语句块:

count = 0
while count < 5:
   print (count, " 小于 5")
   count = count + 1
else:
   print (count, " 大于或等于 5")

 与其它语言else 一般只与if 搭配不同,在Python 中还有个while ...else 语句,while 后面的else 作用是指,当while 循环正常执行完,中间没有被break 中止的话,就会执行else后面的语句

#如果执行过程中被break啦,就不会执行else的语句啦
count = 0
while count <= 5 :
    count += 1
    if count == 3:break
    print("Loop",count)

else:
    print("循环正常执行完啦")
print("-----out of while loop ------")
输出

Loop 1
Loop 2
-----out of while loop ------

 


 八、break和continue语句


 1.break

break语句可以跳出 for 和 while 的循环体,如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。 实例如下:(下面以while循环举例)

var = 10
while var > 0:
    print('当前的变量值为 :',var)
    var -= 1
    if var == 5:
       break
print("bye bye!")

 

输出内容如下:

当前的变量值为 : 10
当前的变量值为 : 9
当前的变量值为 : 8
当前的变量值为 : 7
当前的变量值为 : 6
bye bye!

2.continue

continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后继续进行下一轮循环。

var = 10
while var > 0:
    var -= 1
    if var == 5:    #变量为5时跳过输出
        continue
    print('当前变量值 :',var)
print('bye bye')

 

输出内容如下:

当前变量值 : 9
当前变量值 : 8
当前变量值 : 7
当前变量值 : 6
当前变量值 : 4
当前变量值 : 3
当前变量值 : 2
当前变量值 : 1
当前变量值 : 0
bye bye

————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

九、执行过程

————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

python3 C:\test.py


1、先启动python3.exe
2、把C:\test.py 从硬盘读入内存
3、解释执行文件内容 (读一行执行一行) 识别python语法


 十、引用计数+垃圾回收机制


x=‘aaa’        #'aaa' 这个值的引用技数1
y=x             #‘aaa’ 这个值的引用计数为2

引用计数为0   python解释器会定期回收


 作业

 

基础需求:

 

  • 让用户输入用户名密码
  • 认证成功后显示欢迎信息
  • 输错三次后退出程序
count=1
while count <=3:
    username=input('请输入用户名>:')
    password=input('请输入密码>:')
    if username == 'shigo' and password == 'abc':
        print('登录成功')
        break
    else:
        print('用户名或密码错误请重试')
    count +=1
View Code

升级需求:

  • 可以支持多个用户登录 (提示,通过列表存多个账户信息)
  • 用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里)
username = ['shigo','hehe','keke']
userpasswd = ['123','123','123']
count = 0

while count < 3:
    name = input('请输入用户名>:')
    passwd = input('请输入密码>:')
    if name in username and passwd in userpasswd:   #判断用户输入的用户名和密码在列表里是否存在
        print('登录成功')
        break
    elif name in username and passwd not in userpasswd:
        print('输入不正确,请重新输入')
        count += 1
        if count == 3:
            f = open('lockname.txt','a+') #打开一个文件用于读写
            msg = '您的用户%s已被锁定\n' %name
            f.write(msg)
            f.close()
            break
    else:
        if name not in username:
            print('您输入的用户名不存在')
            break
View Code

 

转载于:https://www.cnblogs.com/shigozsr/p/7991756.html

Python学习笔记》是由皮大庆编写的一本关于Python语言学习的教材。在这本书中,作者详细介绍了Python语言的基础知识、语法规则以及常用的编程技巧。 首先,作者简要介绍了Python语言的特点和优势。他提到,Python是一种易于学习和使用的编程语言,受到了广大程序员的喜爱。Python具有简洁、清晰的语法结构,使得代码可读性极高,同时也提供了丰富的库和模块,能够快速实现各种功能。 接着,作者详细讲解了Python的基本语法。他从变量、数据类型、运算符等基础知识开始,逐步介绍了条件语句、循环控制、函数、模块等高级概念。同时,作者通过大量的示例代码和实践案例,帮助读者加深对Python编程的理解和应用。 在书中,作者还特别强调了编写规范和良好的编程习惯。他从命名规范、注释风格、代码缩进等方面指导读者如何写出清晰、可读性强的Python代码。作者认为,良好的编程习惯对于提高代码质量和提高工作效率非常重要。 此外,作者还介绍了Python的常用库和模块。他提到了一些常用的库,如Numpy、Pandas、Matplotlib等。这些库在数据处理、科学计算、可视化等领域有广泛的应用,帮助读者更好地解决实际问题。 总的来说,《Python学习笔记》是一本非常实用和全面的Python学习教材。通过学习这本书,读者可以系统地学习和掌握Python编程的基础知识和高级应用技巧,为以后的编程学习和工作打下坚实的基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值