python入门笔记(图灵书配套)——随学随更新中

基础知识

第1章 起步

安装python,anaconda及pycharm

此帖以python3语法为例,python2语法会有所出入

 第2章 变量与简单数据类型

涉及如下函数:

#大小写处理函数
title()    #字符串中所有单词首字母大写
upper()    #字符串中所有字母大写
lower()    #字符串中所有字母小写

#合并拼接字符串
str3 = str1 + str2    #直接用+实现多个字符串的直接拼接

#删除空白
strip()    #剔除字符串两侧空格
rstrip()    #剔除字符串右侧空格(right)
lstrip()    #剔除字符串左侧空格(left)

#基本运算符
+ — * /
**    #乘方,例:3**2=9

#类型转换
str()  int()  float()    #直接将需要转换类型的变量放在括号里即可转换为所需类型

补充实验:

 1、对于strip系列函数——可剔除字符串前后全部空白(不只一个)

>>> str_kong = "  kong  "
>>> str_kong.strip()
'kong'

2、基本运算中存在极个别小数位数异常现象——初级阶段忽略即可,后期做项目时如因此出现异常视情况进行修改

>>> 0.2+0.1
0.30000000000000004
>>> 0.1*3
0.30000000000000004
>>> 0.2*3
0.6000000000000001

3、python3对于整数与浮点数要求没有那么严格

>>> 3/2
1.5    #python2中结果会显示为1

4、‘\n’与‘\t’的使用——注意在print()中将多个元素用“,”隔开

#对a,b,c进行赋值的两种方法
#方法1
>>> a=1
>>> b=2
>>> c=3
#方法2
>>> [a,b,c]=[1,2,3]
#错误示例
>>> a=1,b=2,c=3
>>> a=1 b=2 c=3

#print()同时输出多个变量的方法
#错误示例
>>> print(a\t b\t c)
>>> print(a\tb\tc)
>>> print(a"\t"b"\t"c)
#正确示例
>>> print(a,"\t",b,"\t",c)    #引号阔起\t,逗号分开各个变量
1        2       3

第3章 列表简介

涉及函数如下:

>>> list=['a','c','b','d','a']
>>> num=[1,2,3,4,5]    #创建列表

#索引功能
>>> print(num[-1])    #索引序号为负数表示倒数第n个元素
5
>>> print(list[0])    #索引序号从0开始
a

#修改元素(直接替换)
>>> num[3]=9    #直接用9替换num列表中第4个元素
>>> print(num)    #直接输出整体列表
[1, 2, 3, 9, 5]

#添加元素————append()、insert()
>>> num.append(8)    #append()函数在列表末尾添加元素
>>> num.insert(4,6)    #insert()函数在列表任意位置添加元素(位置序号从0开始)
>>> print(num)
[1, 2, 3, 9, 6, 5, 8]

#删除元素————del、pop()、remove()
>>> del num[3]    #已知需要删除元素的位置使用del语句
>>> a = num.pop()    #pop()函数默认删除最后一个元素,并将所删除元素保存至变量中
>>> b = num.pop(0)    #已知需要删除元素的位置使用pop(n),并将所删除元素保存至变量中
>>> print("a=",a,"\t b=",b,"\t num=",num)    #‘\t’为制表符、‘\n’为换行符
a= 8     b= 1    num= [2, 3, 6, 5]

>>> list.remove('a')    #remove()函数,已知需要删除元素本身时使用
>>> print(list)
['c', 'b', 'd', 'a']    #当列表中含有多个相同元素是,优先删除靠前的元素且仅删除一个元素

#列表排序————reverse()、sort()、sorted()
>>> list=['a','c','b','d','a','e']
#永久改变排序
>>> list.reverse()       #reverse()函数将原列表直接倒序
>>> print(list)
['e', 'a', 'd', 'b', 'c', 'a']
>>> list.sort()        #sort()函数,正序排列
>>> print(list)
['a', 'a', 'b', 'c', 'd', 'e']
>>> list.sort(reverse=True)       #reverse=True,倒序排列
>>> print(list)
['e', 'd', 'c', 'b', 'a', 'a']
#临时改变排序
>>> print(sorted(list))        #sorted()临时改变列表顺序
['a', 'a', 'b', 'c', 'd', 'e']
>>> print(list)                #自动恢复原列表顺序
['a', 'c', 'b', 'd', 'a', 'e']

#列表长度
>>> len(list)    #len()函数直接反馈列表中元素个数
6

补充实验:

1、关于汉字排序——排序功能不支持汉字排序,仅支持英语及数字

>>> word=["张","王","李","刘"]
>>> word.sort(reverse=True)
>>> print(word)
['王', '李', '张', '刘']

2、关于混合类型排序——(1)单词排序需要统一大小写;(2)单词与数字同时存在时不可排序 

#不支持数字与字符串混合类型列表排序
>>> list=["b","dca","ab","a",1,7,3]
>>> list.sort()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: '<' not supported between instances of 'int' and 'str'

#支持整型与浮点型混合排序
>>> list=[1,3,2,7,5,6.3,4.2,9.1,3.7]
>>> list.sort()
>>> print(list)
[1, 2, 3, 3.7, 4.2, 5, 6.3, 7, 9.1]

#支持大小写字母同时排序,大写字母优先于小写字母
>>> list=["Abc","bcd","aca","aBc","bCD","Def"]
>>> list.sort()
>>> print(list)
['Abc', 'Def', 'aBc', 'aca', 'bCD', 'bcd']

第4章 操作列表

涉及如下函数:

代码段1:
names = ["lily","bob","lucy","david","chrismas"]
for name in names:    #for循环实现逐一读取列表中的每一个元素并输出,读取至最后一个元素时自动终止循环
    print(name)

代码段2:
>>>num = list(range(1,11))    #range()产生1,2,3,4,5,6,7,8,9,10并通过list()生成列表
>>>print(num)
>>>[1,2,3,4,5,6,7,8,9,10]

代码段3:
squares = [i**2 for i in range(1,11,2)]    #range()实现循环为i赋值1,3,5,7,9(从1-10,步长为2),i**2表达式实现将i平方后变成squares列表中的元素
print(squares)

代码段4:
>>> num = [1,2,3,4,5,6,7,8,9,10]
>>> print(num[0:3])                #切片,选取列表中需要选取的元素
[1, 2, 3]
>>> print(num[2:7])
[3, 4, 5, 6, 7]
>>> print(num[:7])                 #起始位置空缺默认从第一个元素开始
[1, 2, 3, 4, 5, 6, 7]
>>> print(num[3:])                 #终止位置空缺默认至最后一个元素终止
[4, 5, 6, 7, 8, 9, 10]
>>> print(num[-3:])                #无论列表如何改变直接读取列表倒数3个元素
[8,9,10]
>>> my_num = num[:]                #复制列表(复制后的列表是一个新列表,与复制前列表元素相同但完全独立)
>>> print(my_num)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

代码段5:
>>> static = (50,100,200)    #创建一个元组(固定不变的列表)
>>> print(static[1])         #读取方法与列表一致
100                            
>>> static[1]=150            #但不可单独修改其中元素,只能整体重新定义方可修改
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment

补充实验:

1、关于书中一个实验中的换行细节——(1)每一个print()语句自动换行 (2)程序段中的空行不会影响到输出中的空行 (3)两个print中间加入的‘\n’可导致额外空行

names = ["lily","bob","lucy","david","chrismas"]
for name in names:
    print("1")
    print(name + " is my friend!")
    print("I have a lot of friends")

    print("2")
    print(name + " is my friend!\n")
    print("I have a lot of friends")

    print("3")
    print(name + " is my friend!")

    print("I have a lot of friends")

输出如下: 

1
lily is my friend!
I have a lot of friends
2
lily is my friend!

I have a lot of friends
3
lily is my friend!
I have a lot of friends

2、列表解析补充——可叠加两个循环

squares = [i**2+j**3 for i in range(1,11,2) for j in range(1,11,2)]
#同时使用i,j变量,当i=1时j进入循环,j=1,3,5,7,9分别进行运算完毕后,再次进入i循环,i=3,j再次循环,j=1,3,5,7,9,以此类推,共进行了25此运算赋值,产生如下列表
print(squares)

output:
[2, 28, 126, 344, 730, 10, 36, 134, 352, 738, 26, 52, 150, 368, 754, 50, 76, 174, 392, 778, 82, 108, 206, 424, 810]

第5章 If语句

#常用数学比较符号
==    !=    >    <    >=    <=

#条件关键字
and    or

#in与not in
>>> num = [1,2,3,4,5,6,7,8]
>>> '9' in num    #某元素是否在某列表中,是则返回“Ture”,不是则返回“False”
False
>>> i=5
>>> i in num    #也可以检测某变量是否在列表中
True
>>> '9' not in num    #not in与in的功能相同但返回值恰好相反
True
>>> 1 and 2 in num    #in 与 and 的混合使用,1,2同时都在num列表中
True
>>> 1 in num and 2 in num    #in 与 and 的混合使用,1在num列表中同时2也在num列表中
True
>>> '1' in num    #注意变量类型,int型在列表内,str型不在列表内
False
>>> 1 in num
True

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值