首页 > 其他分享 >基础-循环、模块、文件读写

基础-循环、模块、文件读写

时间:2022-11-26 07:44:23浏览次数:29  
标签:__ 文件 name 读写 循环 模块 print csv

1、循环(loop)

1.1for循环:语法“for[变量名] in [可迭代对象名]:[指令]"

name="xiaojiayu"
for char in name:
    char=char.upper()
    print(char)
name=["xiao","jia","yu"]
i=0
for char in name:
    new=name[i].upper()
    name[i]=new
    i+=1
print(name)
me=["xiao","jia","yu"]
for i,char in enumerate(name):   #enumerate函数会返回一个对应当前元素索引的值,可存在变量i中
    new=name[i].upper()
    name[i]=new
print(name)

#输出结果:['XIAO', 'JIA', 'YU']

1.2 range函数:创建一个整数序列,接受2个参数,序列起始数字和结束数字;返回第一个参数到第二个参数之间(不含第二个参数)的所有整数。

for i in range(0,10):
    print(i)
    
'''
================ RESTART: E:/Program Files/python3.8/study/t1.py ===============
0
1
2
3
4
5
6
7
8
9
>>> '''

1.3、while循环:语法”while[表达式]:[执行代码]"

num=10
while num>0:
    print(num)
    num-=1
print("Happy New Year!")
'''
10
9
8
7
6
5
4
3
2
1
Happy New Year!'''

1.4  break,continue:break终止循环,从循环跳出;continue跳出本次循环,执行下次循环;

2、模块

2.1导入内置模块:

>>> import math
>>> math.pow (2,3)
8.0

2.2、导入其他模块:

导入模块时,其中的代码都会被执行。创建一个名为module1的模块代码如下:

#module1中的代码

print("hello")

module2中代码:

import t1

print("hello")

执行module2时,结果如下:

hello
hello
这个行为有时会导致不便。比如你的模块中可能有测试代码,不希望在测试时执行。那么把模块中所有的代码放置在if __name__ == "__main__”语句中,即可解决这个问题。如上例中modlue1代码改为:

if __name__ == "__main__”:

  print("hello")

再执行module2,结果只打印1个hello。

3、文件

3.1 写文件操作

处理文件的第一步是使用内置函数open打开文件。open函数有2个参数:参数1,文件路径字符串;参数2,打开文件的模式;

文件路径:斜杠分隔的一串字符;为了避免程序在不同操作系统中运行出错,应使用内置函数os模块来创建路径。模块中的path函数接收文件路径中的文件名作为参数,并自动构建完整的文件路径。

>>> import os
>>> os.path.join("user","ook","1.txt")
#输出结果:'user\\ook\\1.txt'

打开方式:”r“:只读;”w“:只写;”w+“可读可写

f1=open("t1.txt","w")
f1.write("hello python!")
f1.close()

3.2 自动关闭文件:使用with语句打开文件的语法”with open([文件路径],[打开方式]) as [变量名]:[执行代码]"

3.3 读文件

>>> with open("t1.txt","r")as f2:
print(f2.read())

在没有关闭又打开文件的情况下,你只能调用文件对象的read方法1次。因此如后续程序需要,应将文件内容保存到1个变量或容器内;

3.4 csv文件

也可以使用with语句打开csv文件,但在语句中需要使用csv模块将文件对象转换为csv对象;csv模块有一个writer的方法,可接受一个文件对象和一个分隔符;writer方法返回一个带writerow方法的csv对象。writerow方法可以接受一个列表作为参数,writerow方法每次只能创建1行数据

import csv
list1=[["topgun","risky business","minorty report"],["titanic","the revenant","inceptin"],["training day","man on fire","flight"]]
with open("test1.csv","w") as f:
    w=csv.writer(f,delimiter=",")
    for i in range(0,3):
        w.writerow(list1[i])
                 

reader方法用法与writer类似;

import csv
with open("test1.csv","r") as f:
    r=csv.reader(f,delimiter=",")
    for row in r:
        print(",".join(row))

  

标签:__,文件,name,读写,循环,模块,print,csv
From: https://www.cnblogs.com/geng-xiaoqiaoliushui/p/16924071.html

相关文章

  • jQuery循环滚动展示代码
    循环滚动展示的文字和图片每个人都见过,实现类似效果的JS也很多。但如果只用于几个条目或三五张图片,体积庞大的JS会浪费资源。我们来用JQ实现同样的功能!首先,先看一下HTM......
  • Python: 50个能够满足所有需要的模块
    Python具有强大的扩展能力,我列出了50个很棒的Python模块,包含几乎所有的需要:比如Databases,GUIs,Images,Sound,OSinteraction,Web,以及其他。推荐收藏。  Graphicalint......
  • 为什么需要模块化
    1.为什么需要模块化如果多人同时开发一个项目的时候,每个人都会创建很多的.js文件,可能就会存在命名冲突的问题。为了解决这个问题我们可以使用立即调用函数。但是......
  • RowPrePaint 事件死循环(不停的刷新)问题 解决
    privatevoiddgv_RowPrePaint(objectsender,DataGridViewRowPrePaintEventArgse){if(infos[e.RowIndex].HaveDetails=="不存在")//此条......
  • for循环
    1、语法语法一、forNAME[inWORDS...];doCOMMANDS;donefor变量名in列表;do循环体donefor变量名in列表do循环体done语法二、​for((:for((exp1;exp2;e......
  • 最全的PyInputPlus模块方法总结
    安装第三方模块    在Windows和macOS中,pip会随着Python自动安装。可以通过命令行窗口输入pip检查是否已经安装。但在Linux中,必须由你单独安装。在UbuntuLi......
  • Python入门(5)——分支与循环
    使用功能更强大的IDEPyCharm是一款功能强大的Python编辑器,具有跨平台性。学习分支语句及循环语句,为了我们调试方便,我们后期选择使用PyCharm,PyCharm可以直接到官网下载......
  • do...while循环(CasonDoWhile02)
    packagecom.Java.LSC.shiyan.JavaXunHuan;publicclassCasonDoWhile02{publicstaticvoidmain(String[]args){inta=0;while(a<0){......
  • WeNet和ESPnet中下采样模块(Conv2dSubsampling)
    关于WeNet和ESPnet两个工具下采样模块都是相同的操作,首先将输入序列扩充一个维度(因为要使用二维卷积),然后通过两个二维卷积,其中第一个卷积的输入通道为“1”,输出通道为odi......
  • 北理工慕课4.7循环的综合应用讨论题2
    打印图形以下图形用什么算法实现程序最简单?你会考虑哪些测试用例来保证程序的正确性和坚固性?请给出你的实现程序。(图中n=5) 这题颇有意思,本人代码如下供参考#inclu......