Python编程基础(快速入门必看)_创建字典{‘newton‘ 1642, ‘darwin‘ 1809, ‘turing‘


其中,v是循环变量,Seq是序列类型,涵盖字符串、列表及元组,在每轮循环中,循环变量被设置为序列类型中的当前对象,for\_block是循环体,用来完成具体功能。


例:求1+2+3+4+5的值



sum = 0
for i in range(1,6):
sum = sum + i

print(“1+2+3+4+5 = %d”%sum)


![在这里插入图片描述](https://img-blog.csdnimg.cn/20200922183457377.png#pic_center)


#### 二、内建数据结构


在Python中,最基本的数据结构是序列。  
 序列中的成员有序排列,都可以通过下标偏移量访问到它的一个或几个成员。除了前面已经介绍过的字符串,最常见的序列是列表和元组。


##### 1、列表


* 列表是Python中最具灵活性的有序集合对象类型。和字符串不同的是,列表具有可变长度、异构以及任意嵌套列表的特点。
* 列表是可变对象,支持在原处修改。


**列表的常用方法**


1. L.append(v) :把元素v添加到列表L的结尾,相当于a[len(a)] = [v]
2. L.insert(i,v):将值v插入到列表L的索引i处
3. L.index(x):返回列表中第一个值为x的元素的索引
4. L.remove(v):从列表L中移除第一次找到的值v
5. L.pop([i]):从列表的指定位置删除元素,并将其返回。如果没有指定索引,a.pop()返回最后一个元素。
6. L.reverse():倒排列表中的元素
7. L.count(x):返回x在列表中出现的次数
8. L.sort(key=None, reverse=False):对链表中的元素进行适当的排序。


**列表的推导式**  
 列表推导式提供了从序列创建列表的简单途径。通常应用程序将一些操作应用于某个推导序列的每个元素,用其获得的结果作为生成新列表的元素,或者根据确定的判定条件创建子序列


![在这里插入图片描述](https://img-blog.csdnimg.cn/20200922184315515.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NqanNhYWFh,size_16,color_FFFFFF,t_70#pic_center)  
 列表推导式示例:



vec = [2, 4, 6, 8, 10]
print([3*x for x in vec])

vec = [2, 4, 6,8,10]
print([3*x for x in vec if x > 6])

vec1 = [2, 4, 6]
vec2 = [4, 3, -9]
print([xy for x in vec1 for y in vec2 if xy>0])


![在这里插入图片描述](https://img-blog.csdnimg.cn/20200922184627165.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NqanNhYWFh,size_16,color_FFFFFF,t_70#pic_center)


##### 2、元组


* 元组有很多用途,例如:坐标(x, y),数据库中的员工记录等等。
* 元组和字符串一样,不可改变,即不能给元组的一个独立的元素赋值。
* 元组和列表看起来不同的一点是:元组用的是圆括号(),而列表用的是方括号[]。



tup = tuple(‘bar’) #创建元组
print(‘输出元组tup:’,tup) #输出元组

nested_tup = (4,5,6),(7,8)
print(‘输出元组图tup:’,nested_tup)#输出元素是元组的元组
print(‘元组的连接’,tup+tuple(‘wwy’))

a,b,c = tup #元组的拆分
print(a,b,c)
print(tup.count(a)) # 统计某个数值在元组中出现的次数


![在这里插入图片描述](https://img-blog.csdnimg.cn/20200922185135828.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NqanNhYWFh,size_16,color_FFFFFF,t_70#pic_center)


##### 3、字典


* 字典,也称映射,是一个由键/值对组成的非排序可变集合体。键值对在字典中以下面的方式标记:
* dict = {key1 : value1, key2 : value2 }
* 键/值对用冒号分割,而各个元素之间用逗号分割,所有元素都包括在花括号中。值得注意的是,字典中的键必须是唯一的,只能使用不可变的对象(比如字符串)来作为字典的键,字典中的键/值对是没有顺序的。


**字典的常用方法描述**  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200922185644481.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NqanNhYWFh,size_16,color_FFFFFF,t_70#pic_center)  
 用例:



scientists = {‘Newton’ : 1642, ‘Darwin’ : 1809, ‘Turing’ : 1912}
print(‘keys:’, scientists.keys()) #返回字典中的所有键
print(‘values:’, scientists.values()) #返回字典中的所有值
print(‘items:’, scientists.items()) #返回所有键值对,形式(键, 值)
print(‘get:’, scientists.get(‘Curie’, 1867)) # get方法

temp = {‘Curie’ : 1867, ‘Hopper’ : 1906, ‘Franklin’ : 1920}
scientists.update(temp) #用字典temp更新字典scientists
print(‘after update:’, scientists)
scientists.clear() # 清空字典
print(‘after clear:’, scientists)


![在这里插入图片描述](https://img-blog.csdnimg.cn/20200922185811215.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NqanNhYWFh,size_16,color_FFFFFF,t_70#pic_center)


##### 4、集合


* 集合是一个由唯一元素组成的非排序集合体。
* 集合中的元素没有特定顺序,集合中没有重复项。
* 可以使用大括号{ }或者set()函数创建集合,但是,创建一个空集合必须用 set(),因为{ }是用来创建一个空字典。



set1 = set([0,1,2,3,4])
set2 = set([1,3,5,7,9])
print(set1.issubset(set2))
print(set1.union(set2))
print(set2.difference(set1))
print(set1.issubset(set2))


![在这里插入图片描述](https://img-blog.csdnimg.cn/20200922190206786.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NqanNhYWFh,size_16,color_FFFFFF,t_70#pic_center)


#### 三、函数


* 函数是对程序逻辑进行过程化和结构化的一种方法,函数最大的优点是增强了代码的重用性和可读性。
* Python不但能灵活地定义函数,而且本身内置了很多有用的函数,可以直接调用。


函数定义语法格式如下所示:



def function_name(arguments):
function_block


**关于函数定义的说明:**


1. 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号();
2. function\_name是用户自定义的函数名称;
3. arguments是零个或多个参数,且任何传入参数必须放在圆括号内;
4. 最后必须跟一个冒号 :,函数体从冒号开始,并且缩进;
5. function\_block实现函数功能的语句块。


**lambda函数**  
 Python使用lambda来创建匿名函数,准确地说,lambda只是一个表达式,函数体比def定义的函数简单的多,在lambda表达式中只能封装有限的逻辑。除此之外,lambda函数拥有自己的命名空间,且不能访问自有参数列表之外或全局命名空间里的参数。


例题:假如要编写函数实现计算多项式1+2\_x+y2+z\_y的值,可以简单的定义一个lambda函数来完成这个功能。



polynominal = lambda x,y,z: 1+2x+y**2+zy
polynominal(1,2,3)


![在这里插入图片描述](https://img-blog.csdnimg.cn/20200922190835610.png#pic_center)


#### 四、文件操作


##### 1、文件处理过程


1. 打开文件:open()函数;
2. 读取/写入文件:read()、readline()、readlines()、write()等;
3. 对读取到的数据进行处理;
4. 关闭文件:close()。


对文件操作之前需要用open() 函数打开文件,打开之后将返回一个文件对象(file对象)。open 函数的语法格式如下:  
 `file_object = open(file_name [, access_mode = “r”, buffering= -1])`


##### 2、数据的读取方法


![在这里插入图片描述](https://img-blog.csdnimg.cn/20200922191206996.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NqanNhYWFh,size_16,color_FFFFFF,t_70#pic_center)  
 **读取txt文件时指定读取数量**



f = open(“记事本.txt”,mode = ‘r’)
content = f.read(10) #设置读取内容的长度size
print(content)
f.close()
print(type(content))


**按行读取txt文件**



f = open(“记事本.txt”,mode=‘r’)
content = f.readlines()
print(content)
f.close()


##### 3、读取csv文件


CSV (Comma Separated Values),即逗号分隔值,也称为字符分隔值,因为分隔符除了逗号,还可以是制表符,是一种常用的文本格式,用以存储表格数据,包括数字或者字符。


CSV文件具有如下特点:


1. 纯文本,使用某个字符集,比如ASCII、Unicode或GB2312;
2. 以行为单位读取数据,每行一条记录;
3. 每条记录被分隔符分隔为字段;
4. 每条记录都有同样的字段序列。


Python内置了csv模块,import csv之后就可以读取CSV文件了。



import csv
with open(“student.csv”, “r”) as f:
reader = csv.reader(f)
rows = [row for row in reader]
for item in rows:
print(item)


##### 4、文件写入与关闭


**文件的写入**


* write() 函数用于向文件中写入指定字符串,同时需要将open函数中文件打开的参数设置为 mode = w。
* write() 是逐次写入,writelines() 可将一个列表中的所有数据一次性写入文件。
* 如果有换行需要,则要在每条数据后增加换行符,同时用“字符串 .join() ”的方法将每个变量数据联合成一个字符串,并增加间隔符 “\t”。


用例:



import csv
content = [[‘0’,‘hanmei’,‘23’,‘81’],
[‘1’,‘mayi’,‘18’,‘99’]]
f = open(“test.csv”,“w”,newline=‘’)#如果不加newline=“”,就会出现空行
content_out = csv.writer(f)#生成writer对象存储器
for con in content:
content_out.writerow(con)

f.close()


运行就会生成一个csv文件  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200922192659921.png#pic_center)  
 打开test.csv文件:  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/2020092219273724.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NqanNhYWFh,size_16,color_FFFFFF,t_70#pic_center)


**关闭文件**


文件操作完毕,一定要关闭文件close(),以便释放资源供其他程序使用。


### 关于Python技术储备


学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!


包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,Python自动化测试学习等教程。带你从零基础系统性的学好Python!



> 
> 👉[[[CSDN大礼包:《python安装包&全套学习资料》免费分享]]]( )(**安全链接,放心点击**)
> 
> 
> 


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/b2ac98e1fe584e19bb0fb91815c87a21.png#pic_center)


#### 一、Python大礼包


Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/fad4fb591a794d90ae9714897bc4b8ad.png#pic_center)


#### 三、入门学习视频


![](https://img-blog.csdnimg.cn/img_convert/e0106a2ebc87d23666cd0a4b476be14d.png)


#### 四、 **Python爬虫秘笈**


光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/fe3c3f3d2f204adeb0b54f95ae84f8a4.gif#pic_center)


#### 五、 **数据分析全套资源**


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/4f7f1678a7a74f8f916f97ee79b0b4a2.png#pic_center)


#### 六、python副业兼职与全职路线


![在这里插入图片描述](https://img-blog.csdnimg.cn/f0f125fc73a644369b21733fd96d658f.png)  
 **上述这份完整版的Python全套学习资料已经上传CSDN官方,如果需要可以微信扫描下方CSDN官方认证二维码 即可领取**



> 
> 👉[[[CSDN大礼包:《python安装包&全套学习资料》免费分享]]]( )(**安全链接,放心点击**)
> 
> 
> 



![](https://img-blog.csdnimg.cn/img_convert/bd37b53cabe6b26219af15f1682c1587.png)









![在这里插入图片描述](https://img-blog.csdnimg.cn/20210511152217670.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3poaWd1aWd1,size_16,color_FFFFFF,t_70)

**感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的:**



① 2000多本Python电子书(主流和经典的书籍应该都有了)

② Python标准库资料(最全中文版)

③ 项目源码(四五十个有趣且经典的练手项目及源码)

④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)

⑤ Python学习路线图(告别不入流的学习)


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值