双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

代码运行结果不符合要求,求救

lansan_NEW lansan_NEW 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
##读取一个Python源文件,将文件中所有除保留字外的小写字母换成大写字母
##生成后的文件要能够被Python解释器正确执行

#建立保留字列表
import keyword
s = keyword.kwlist

#建立内置函数列表w,将所有内置函数都加入保留字列表s
w = dir(__builtins__)
for i in range(len(w)):
s.append(w[i])
s.append('(input') #自行添加Python源文件中保留字、自定义函数以外的Python参数
s.append('sum))') #百度到的Python书写规范:括弧内的元素必须顶着左、右括弧,如:(a, b)正确;( a, b )不正确
n = input('输入一个文件名:')

#建立一个以每行的所有单词为元素组成的列表组
f = open(n,'r',encoding = 'utf-8').readlines()
ls = [i.split() for i in f] #四行#@@代码的简写
#@@ls = []
#@@for i in f:
#@@ i = i.split()
#@@ ls.append(i)

##fw = open(n,'r')
##for i in range(len(ls)):
## for j in range(len(ls[i])):
## x = ls[i][j]
## print(x)

#遍历二维列表,把普通单词小写变大写
fo = open(n,'w+')
for i in range(len(ls)):
if f[i].isspace(): #str.isspace():如果字符串中只包含空格,返回True,否则False
fo.write(' ' + '\n')
for j in range(len(ls[i])):
x = ls[i][j]
if x not in s:
x = x.upper()
else:
x = x
#将修改后的列表存入文件(覆盖写) 注意:“:”后的包含关系
if x == ls[i][len(ls[i])-1]:#判定是否遍历至每行的末尾
if x == ':':
fo.write(x)
fo.write('\n')
fo.write(' ')#判断是否是包含关系
else:
fo.write(x)
fo.write('\n')
else:
fo.write(x + ' ')
##fo.seek(0)
##for line in fo:
## print(line)
fo.close()

################源文件代码##################
##n = int (input ("请输入一个整数:"))
##sum = 0
##for i in range (n) :
## sum += i+1
##print ("1到{}相加的和是{}" . format (n, sum))

运行程序,得到结果:
N = int (input ("请输入一个整数:"))
sum = 0
for I in range (N) :
sum += I+1 print ("1到{}相加的和是{}" . format (N, sum))

两个问题:1、处理不好最后的换行
2、源代码为了分词特意打了很多空格,虽然源代码能正常运行,但我不知道这个源代码是否符合规范。
请大神指点。
...全文

相关推荐

Android广播机制的学习——自定义广播实战演练——发生求救广播 动态注册BroadcastReceiver

Android广播机制的学习——自定义广播实战演练——发生求救广播 动态注册BroadcastReceiver Android系统中自定义了很多类型的广播,当需要接收这些广播时,只需在程序中创建对应的广播接收者接收即可,当系统提供的广播不能满足实际需求时,可以自定义广播,同时需要编写对应的广播接收者。 以下案例将通过一个发送求救广播来演示自定义广播的发送和接收。 1、创建程序 创建一个名为ForHelp的应用程序,指定包名为cn.itcast.forhelp。 2、放置界面控件 在activity_main

JEBM

Arduino基础项目二:制作S.O.S求救信号

一、所需元件 1 × DFduino UNO R3(以及配套USB数据线) 1 × 面包板 2 × 彩色面包线 1 × 5mm LED灯 1 × 220欧电阻 二、硬件连接 三、软件代码 国际莫尔斯码求救信号说明:莫尔斯码是一种字符编码,英文的每个字母,都是由横杠和点不同的组合而成。这样的好处是,使用简单的两种状态,就能来传递所有的字母和数字,非常的简单和方便。 我们可以通过LED开关两种状态来拼出一个个字母。通过长闪烁和短闪烁来表示点和横杠。项目二中,我们就可以拼写出S.O.S这三

简时刻

基于感应器的智能求救系统----以android为例实现

基于感应器的智能求救系统----以android为例实现 基于感应器的智能求救系统是由android实验小组研发的一款基于android手机系统以及汽车硬件的能够通过感应外界温度、压力、初速度就可以轻松求救及手机寻回的软件。 项目负责人:张蔚项目研究成员:鞠强、李曼祎、李全伟、张

androidlab

134通过Qt控制python代码运行并将结果显示

089基于深度学习的小样本数据检测_含10多种模型包括alexnet、DenseNet、DLA、GoogleNet、Mobilenet、ResNet、ResNeXt、ShuffleNet、VGG、Effici。084基于CNN卷积神经网络的核桃品质检测_含10多种模型包括alexnet、DenseNet、DLA、GoogleNet、Mobilenet、ResNet、ResNeXt、ShuffleNet、VGG、E。147基于CNN卷积网络的可回收垃圾分类-免安装python环境下载即可运行')

vdggrdgrdg

java面试题35 给定以下JAVA代码,这段代码运行后输出的结果是()

java面试题35 给定以下JAVA代码,这段代码运行后输出的结果是() 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ...

前端小歌谣
评论 4
收藏 已收藏
分享
返回顶部
lansan_NEW
脚本语言 37,738 成员 34,208 内容