python变量/分支/循环/数组/列表/元组/序列

这篇博客介绍了Python的基础知识,包括内置函数(BIF)、变量命名规则、字符串转义、变量赋值、循环结构(如while、for循环)、数据类型(如整型、浮点型、布尔型)、类型转换、常用操作符、分支(if-else)、列表操作(如添加、删除、切片)和元组的特点。还涉及到字符串和序列的操作,如字符串转列表、列表长度计算、列表排序等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

       最近比较流行python,于是我这种从不赶潮流的人也决定跟一把潮流。工作原因学习时间有限,好容易挤着时间看了一部分网上的视频,却被劝说没什么用处,我们就是靠java吃饭的。当然多学一种语言也不会有什么坏处,既然开始了,那就应该坚持,不管对错,不管是否有用都要把它学完。下面是学习笔记:

-----------------------------------Bif及打印----01-------------------------------

 BIF 就是 Built-in Functions,内置函数。

1.python是什么语言?

python是一种支持面向对象的解释性高级语言,属于脚本语言的一种

2.IDLE是什么?

是python程序的基本ide(集成开发环境),具备基本的ide的功能

3.print()的作用是什么? 

打印输出

4.python中表示乘法的符号是什么?  

*数字中代表乘法,字符串中代表执行5次,例>>> print('a'*5)    aaaaa

5.为什么print("i love you" + 5)不可以执行会报错,而print("i love you" * 5)可以正常执行?

python中不同类型的东西不能加在一起

6.如何在字符穿中嵌入双引号  

>>> print('a"b"c')        a"b"c

>>> print ('a\"b"c')      a"b"c

>>> print("a\"b\"c")    a"b"c

---------------------------------缩进---02--------------------------------------

1. Python3 提供了多少个 BIF?

 在 Python 或 IDLE 中,输入 dir(__builtins__) 可以看到 Python 提供的内置方法列表

 help(input) 

2. 在 Python 看来:'FishC' 和 'fishc' 一样吗?

不一样,在python种区分大小写。但是开发过成功很难犯此类问题,python是可以先使用后声明的。

3. Python 中什么是最重要的?你赞同吗?

缩进,在要缩进之前打“:“,python会进行自动缩进

4. 这节课的例子中出现了“=”和“==”,他们表示不同的含义,你在编程的过程中会不小心把“==”误写成“=”吗?有没有好的办法可以解决这个问题呢?

=是赋值,==是比较,python种很难犯此类为难题,如果if(c=1){}会直接报错,if里不可以赋值

5. 你听说过“拼接”这个词吗? 

拼接字符串:"I"+"LOVE"+"YOU"='ILOVEYOU'

动动手:

0. 编写程序:hello.py,要求用户输入姓名并打印“你好,姓名!”

name=input('请输入你得姓名')

print('你好'+name)

1. 编写程序:calc.py 要求用户输入1到100之间数字并判断,输入符合要求打印“你妹好漂亮”,不符合要求则打印“你大爷好丑”

temp = input('请输入1到100之间的数字:')

num = int(temp)

if 1<=num<=100:

    print('你好漂亮')

else:

    print('你好丑')

-----------------------------------变量及赋值---03--------------------------------------

0. 以下哪个变量的命名不正确?为什么?

(A) MM_520  (B) _MM520_  (C) 520_MM  (D) _520_MM

C:变量名不能以数字开头

1. 在不上机的情况下,以下代码你能猜到屏幕会打印什么内容吗?

>>>myteacher = '小甲鱼'

>>>yourteacher = myteacher

>>>yourteacher = '黑夜'

>>>print(myteacher)

 '小甲鱼' 

2. 在不上机的情况下,以下代码你能猜到屏幕会打印什么内容吗?

>>> myteacher = '小甲鱼'

>>> yourteacher = myteacher

>>> myteacher = '黑夜'

>>> print(yourteacher)

 '小甲鱼'

3. 在不上机的情况下,以下代码你能猜到屏幕会打印什么内容吗?

>>>first = 520

>>>second = '520'

>>>first = second

>>>print(first)

会打印:520,注:这里没有单引号括起来,但是他是一个字符串,因为使用 print() 打印,所以不包含单引号

4. 除了使用反斜杠(\)进行字符转义,还有什么方法可以打印:Let's go! 这个字符串?

>>>  "Let's go!"   >>>'Let\'s go'

5. 如果非要在原始字符串结尾输入反斜杠,可以如何灵活处理?

>>> str = r'C:\Program Files\FishC\Good''\\'

6. 在这一讲中,我们说变量的命名需要注意一些地方,但小甲鱼在举例的时候貌似却干了点儿“失误”的事儿,你能看得出小甲鱼例子中哪里有问题吗?

在例子中小甲鱼起了个 str 名字的变量,但事实上我们发现,str 的颜色跟普通变量貌似不同?没错,str() 和 print() 都是内置函数,但 Python 貌似不介意我们对内置函数进行赋值操作,所以这点我们以后就要注意啦,否则可能会出现 BUG 

动动手:

0. 还记得我们第一讲的动动手的题目吗?这一次要求使用变量,计算一年有多少秒?

提示:可以以 DaysPerYear(每年天数),HoursPerDay(每天小时数),MinutesPerHour(每小时分钟数),SecondsPerMinute(每分钟秒数)为变量名。

>>> DaysPerYear = 365

>>> HoursPerDay = 24

>>> MinutesPerHour = 60

>>> SecondsPerMinute = 60

>>> result=DaysPerYear*HoursPerDay*MinutesPerHour*SecondsPerMinute

>>> print(result)

1. 关于最后提到的长字符串(三重引号字符串)其实在 Python3 还可以这么写,不妨试试,然后比较下哪种更方便?

>>>string = ( 

"我爱鱼C,\n"

"正如我爱小甲鱼,\n"

"他那呱唧呱唧的声音,\n"

"总缠绕于我的脑海,\n"

"久久不肯散去……\n")

>>> string="""我爱鱼C,

正如我爱小甲鱼,

他那呱唧呱唧的声音,

总缠绕于我的脑海,

久久不肯散去……"""

2. 请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!

变量名,单引号转义,三重双引号换行,变量名给值

------------------------------分支循环---04--------------------------------------

循环:

while a==b:

     if c==d:

     else:

          if e==g:

          else:

------------------------------数据类型----05--------------------------------

1、数值类型

①整型int:整型和长整型统一表示(同java的long)

②浮点型float:用小数点区分,表示小数

③e记法:

>>> 150000000000

150000000000

>>> 1.5e11

150000000000.0

>>> 15e10

150000000000.0

④布尔类型bool:

>>> True+True

2

>>> True+False

1

>>> True*False

0

2、类型转换的用法bif

①int()

>>> a='520'

>>> b=int(a)   字符串为整型转int可以正常转换,其余情况会直接报错

>>> b

520

>>> a=5.99

>>> c=int(a)    浮点型转为int做截断处理

>>> c

5

②float()将字符串转换为浮点数

>>> a='520'

>>> b=float(b)

>>> b

520.0

>>> a=520

>>> b=float(a)

>>> b

520.0

③str()转换为字符串

>>> a=5.99

>>> b=str(a)

>>> b

'5.99'

>>> c=str(5e19)

>>> c

'5e+19'

注:如果之前str赋值的话,它的身份将不再是bif,而是一个变量名,再次使用str()会报错。

3、关于获得类型的信息

①type()获取变量的类型

>>> type('520')

<class 'str'>

>>> type(5.2)

<class 'float'>

>>> type(1)

<class 'int'>

>>> type(5e10)

<class 'float'>

②isinstance()比较两个变量的类型是否一致

>>> isinstance('小甲鱼',str)

True

>>> isinstance(1,int)

True

>>> isinstance(5.2,int)

False

------------------------------常用操作符----06--------------------------------

>>> a=b=c=d=10

>>> a+=1

>>> a

11

>>> b-=3

>>> b

7

>>> c*=2

>>> c

20

>>> d/=2

>>> d

5.0

>>> 10//2    按照原来的类型返回

5

>>> 3.0//2

1.0

>>> 11%2

1

>>> 3**2      幂运算

9

>>> -3**2

-9

>>> 3**-2

0.1111111111111111

③优先级

先* / 后+- 遇到括号先算括号

④逻辑操作符

and  true+true=true

or    false+false=false

not  不等于   >>> 3<4<5     True

------------------------分支和循环----07/08/09-------------------------

①见plangame.py

score = int(input('请输入一个分数:'))

if 100 >= score >= 60:

    print('A')

elif 60 > score >= 0:

    print('D')

else:

    print('输入错误')

③条件表达式(三元操作符)

>>> x,y=4,5

~~~~~~~~~~~~~~~ 

>>> if x<y:

            small=x

         else:

  small=y

>>> small

4

~~~~~~~~~~~~~~~

>>> small=x if x<y else y

>>> small

4

④断言assert,当条件不成立时会抛出异常

>>> assert 3>4

Traceback (most recent call last):

  File "<pyshell#9>", line 1, in <module>

    assert 3>4

AssertionError

⑤while循环

while 条件:

     循环体

⑥for循环

for 目标  in 表达式:

     循环体

例:

>>> favourite = 'fishC'

>>> for i in favourite:

     print(i,end=' ')     

f i s h C 

⑦range

>>> for i in range(1,10,2):

               print(i)

1

3

5

7

9

⑧break和continue

break:终止当前循环,跳出循环体

continue:结束本次循环,并开始下一轮循环

------------------------数组----10/11/12-------------------------

①列表里可以添加各种类型的元素

>>> mix=[1,'s',4.3,[1,2,3]]

>>> mix

[1, 's', 4.3, [1, 2, 3]]

>>> empty=[]

>>> empty

[]

②向列表添加元素

>>> member=['小甲鱼','a','b','c']

>>> member

['小甲鱼', 'a', 'b', 'c']

>>> member.append('追加1')

>>> member

['小甲鱼', 'a', 'b', 'c', '追加1']

>>> member.extend(['追加2','追加3'])

>>> member

['小甲鱼', 'a', 'b', 'c', '追加1', '追加2', '追加3']

>>> member.insert(0,'牡丹')

>>> member

['牡丹', '小甲鱼', '牡丹', 'a', 'b', 'c', '追加1', '追加2', '追加3']

③获取列表中的元素

>>> member[0]

'牡丹'

④从列表删除元素

>>> member

['a', 'a', 'b', 'c', 'f', 'c', 'd', 'e']

>>> member.remove('c')  删除第一个匹配的元素

>>> member

['a', 'a', 'b', 'f', 'c', 'd', 'e']

>>> del member[0]

>>> member

['a', 'b', 'f', 'c', 'd', 'e']

>>> member.pop()

'e'

>>> name=member.pop()

>>> name

'd'

>>> member

['a', 'b', 'f', 'c']

⑤列表分片slice

>>> member[1:3]   不包含最后一个元素

['b', 'f']

>>> member    分片后原列表的元素不会发生改变

['a', 'b', 'f', 'c']

>>> member[:3]   默认从0开始

['a', 'b', 'f']

>>> member[1:]   默认到最后一个元素

['b', 'f', 'c']

>>> member[:]     列表的拷贝

['a', 'b', 'f', 'c']

⑥列表的常用操作符

>>> list1=list3=[123,456]

>>> list2=[234,123]

>>> list1>list2     比较列表中元素的第一个值

False

>>> (list1<list2) and (list1==list3)   

True

>>> list4=list1+list2    列表的拼接

>>> list4

[123, 456, 234, 123]

>>> list3*3     列表的循环拼接

[123, 456, 123, 456, 123, 456]

>>> list3*=3   列表拼接赋值

>>> list3

[123, 456, 123, 456, 123, 456]

>>> list5=[123,['a','b'],456]  综合列表

>>> 'a' in list5

False

>>> 'a' in list5[1]

True

>>> list5[1][0]

'a'

⑦列表的小伙伴们(列表类型的内置函数)

>>> list1

[456, 123, 456, 123, 456, 123]

>>> list1.count(123)   123出现的次数

3

>>> list1.index(123)    123出现的索引位置

1

>>> list1.reverse()        将列表例的数据倒置

>>> list1

[123, 456, 123, 456, 123, 456]

>>> list1.sort()             将列表按照从小到大的顺序排序

>>> list1

[123, 123, 123, 456, 456, 456]

>>> list1.sort(reverse=True)    将列表按照倒序排序 

>>> list1

[456, 456, 456, 123, 123, 123]

⑧注意列表的拷贝及赋值

>>> list1

[2, 6, 7, 3, 1, 4, 3, 9]

>>> list2=list1[:]     拷贝,在内存中重新复制一份

>>> list2

[2, 6, 7, 3, 1, 4, 3, 9]

>>> list3=list1        给原来的值重新贴一个标签,会随着值得变化而变化

>>> list3

[2, 6, 7, 3, 1, 4, 3, 9]

>>> list1.sort()

>>> list1

[1, 2, 3, 3, 4, 6, 7, 9]

>>> list2

[2, 6, 7, 3, 1, 4, 3, 9]

>>> list3

[1, 2, 3, 3, 4, 6, 7, 9]

------------------------元组---13-------------------------

①元组和列表非常相近,区别:

列表可以任意修改一个元素,可以任意删除和插入元素

元组是不可改变的

②创建一个元组(元组主要是用()和逗号用作区分)

③更新和删除一个元组

>>> temp

('a', 'b', 'c')

>>> temp=temp[:1]+('d',)+temp[1:]     元组中添加一个元素

>>> temp

('a', 'd', 'b', 'c')

>>> del temp    删除元组

④元组相关操作符

同列表一样

------------------------字符串----14/15-------------------------

见单独笔记

----------------------------序列---16---------------------------

>>> a=list()

>>> a

[]

>>> len(a)    判断a列表的长度

0

>>> b='I love fishc'

>>> b=list(b)    把字符串转为list列表

>>> b

['I', ' ', 'l', 'o', 'v', 'e', ' ', 'f', 'i', 's', 'h', 'c']

>>> len(b)    判断b列表的长度 

12

>>> c=(1,1,2,3,5,8,13)

>>> c=list(c)

>>> c

[1, 1, 2, 3, 5, 8, 13]

>>> numbers=[1,18,14,0,-3,-98,76]

>>> max(numbers)    取列表里的最大数

76

>>> min(numbers)     取列表里的最小数 

-98

>>> tuple2=(3.1,3.4,2.5)

>>> sum(tuple2)      列表求和

9.0

>>> sorted(numbers)    把number排序

[-98, -3, 0, 1, 14, 18, 76]

>>> list(reversed(numbers))   列表反转用list包一层

[76, -98, -3, 0, 14, 18, 1]

>>> list(enumerate(numbers))    列举枚举

[(0, 1), (1, 18), (2, 14), (3, 0), (4, -3), (5, -98), (6, 76)]

>>> a=[1,2,3,4,5,6]

>>> b=[4,3,2,3,2,2,3,4,4]

>>> list(zip(a,b))      打包两个list,从0开始,多余的部分舍弃掉

[(1, 4), (2, 3), (3, 2), (4, 3), (5, 2), (6, 2)]

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值