❶ python 从键盘输入5个英文单词,输出以元音字母开头的单词
这里记录在网易云课堂上的课后作业,Python环境为2.7,如果您有更好的算法还望斧正!
1.题目内容: “Pig Latin”是一个英语儿童文字改写游戏,整个游戏遵从下述规则:
(1). 元音字母是‘a’、‘e’、‘i’、‘o’、‘u’。字母‘y’在不是第一个字母的情况下,也被视作元音字母。其他字母均为辅音字母。例如,单词“yearly”有三个元音字母(分别为‘e’、‘a’和最后一个‘y’)和三个辅音字母(第一个‘y’、‘r’和‘l’)。
(2). 如果英文单词以元音字母开始,则在单词末尾加入“hay”后得到“Pig Latin”对应单词。例如,“ask”变为“askhay”,“use”变为“usehay”。
(3). 如果英文单词以‘q’字母开始,并且后面有个字母‘u’,将“qu”移动到单词末尾加入“ay”后得到“Pig Latin”对应单词。例如,“quiet”变为“ietquay”,“quay”变为“ayquay”。
(4). 如果英文单词以辅音字母开始,所有连续的辅音字母一起移动到单词末尾加入“ay”后得到“Pig Latin”对应单词。例如,“tomato”变为“omatotay”, “school” 变为“oolschay”,“you” 变为“ouyay”,“my” 变为“ymay ”,“ssssh” 变为“sssshay”。
(5). 如果英文单词中有大写字母,必须所有字母均转换为小写。
输入格式:
一系列单词,单词之间使用空格分隔。
输出格式:
按照以上规则转化每个单词,单词之间使用空格分隔。
输入样例:
Welcome to the Python world Are you ready
输出样例:
elcomeway otay ethay ythonpay orldway arehay ouyay eadyray
时间限制:500ms内存限制:32000kb
我的答案:
import string
s = raw_input()
words = s.split()
newWords = ''
for word in words:
tmp = word.lower()
if tmp[0] in 'aeiou':
tmp += 'hay'
elif tmp[0] == 'q' and tmp[1] == 'u':
tmp = tmp[2:] + 'quay'
else:
tmp = tmp[1:] + tmp[0]
for i in range(0, len(tmp)):
if tmp[i] in 'aeiouy':
break;
tmp = tmp[i:] + tmp[:i] + 'ay'
newWords += tmp + ' '
print newWords.strip()
用例
测试结果
运行时间
占用内存
提示
得分
1
通过
18ms
5236kb
1
2
通过
18ms
5236kb
1
2.题目内容: 依次判断一系列给定的字符串是否为合法的 Python 标识符。
输入格式:
一系列字符串,每个字符串占一行。
输出格式:
判断每行字符串是否为合法的 Python 标示符,如果合法则输出 True,否则输出 False。
输入样例:
abc
_def
21gh
输出样例:
True
True
False
时间限制:500ms内存限制:32000kb
import re
tmp = raw_input()
while(tmp != ''):
if not re.search(u'^[_a-zA-Z0-9]+$',tmp):
print False
elif not re.search(u'^[_a-zA-Z]+$',tmp[0]):
print False
else:
print True
tmp = raw_input()
用例
测试结果
运行时间
占用内存
提示
得分
1
通过
17ms
5112kb
1
3.题目内容: 依次计算一系列给定字符串的字母值,字母值为字符串中每个字母对应的编号值(A对应1,B对应2,以此类推,不区分大小写字母,非字母字符对应的值为0)的总和。例如,Colin 的字母值为 3 + 15 + 12 + 9 + 14 = 53
输入格式:
一系列字符串,每个字符串占一行。
输出格式:
计算并输出每行字符串的字母值。
输入样例:
Colin
ABC
输出样例:
53
6
时间限制:500ms内存限制:32000kb
tmp = raw_input()
while(tmp != ''):
num = 0
tmp = tmp.lower()
for c in tmp:
i = ord(c) - 96
if i < 1 or i > 26:
i = 0
num += i
print num
tmp = raw_input()
用例
测试结果
运行时间
占用内存
提示
得分
1
通过
17ms
5112kb
1
2
通过
17ms
5116kb
1
❷ python编程问题英语版
你能读懂英文不,题目意思很简单的,就是判断字符串是否是回文(即反序后和原来字符串一样)。
回文(Palindrome),就是一个序列(如字符串)正着读反着读是一样的。如何判断一个字符串是回文结构呢?在MIT Introction to CS and Programming Lec 4 (39:38) 里,介绍了递归的方法:
def isPalindrome(s):
if len(s) = 1:
return True
else:
return s[0] == s[-1] and isPalindrome(s[1:-1])
其实完全可以用循环实现,复杂度是一样的:def isPalindrome1(s):
for i in range(len(s))/2:
if not s[i] == s[len(s)-i-1]:
return False
return True
不过其实我们都被忽悠啦,在Python里可以很容易的从回文的定义来判断,就是字符串的倒序和字符串本身是一样的话,就是回文。
def isPalindrome2(s):
return s == s[::-1]
以上的实现复杂度也是O(n)的,不过是python内部用C语言实现的,猜测会比前2个方法快。
❸ 关于python 语言基础的练习题
一、Python语言的简述
Python语言是一种解释型、面向对象的编程语言,是一种开源语言。
Python属于动态类定义语言,也是一种强调类型语言。
二、Python语言的特点
1、简单、高级
2、面向对象
3、可扩展性、免费和开源的
4、可移植型、可嵌入型、丰富的库
三、Python语言的应用范围
1、操作系统管理
2、科学计算
3、Web应用
4、图形用户界面(GUI)开发
5、其他,例如游戏开发等
优点
简单:Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样。它使你能够专注于解决问题而不是去搞明白语言本身。
易学:Python极其容易上手,因为Python有极其简单的说明文档。
易读、易维护:风格清晰划一、强制缩进。
用途广泛。
速度快:Python的底层是用C语言写的,很多标准库和第三方库也都是用C写的,运行速度非常快。
免费、开源:Python是FLOSS(自由/开放源码软件)之一。使用者可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。
❹ python怎么发音
python发音:
英['paɪθən];美['paɪθɑːn]
一、意思:n.大蟒;巨蟒
二、例句:
A giant python sure gave these folks a scare.
这条巨蟒足以让村民大吃一惊。
三、词汇用法/搭配:
复数形式:pythons
(4)python英语试题扩展阅读:
近义词:anaconda
一、意思:n.水蟒
二、读音:英[ˌænə'kɒndə];美[ˌænə'kɑːndə]
三、例句:
The anaconda wrapped itself around the boy.
这条水蟒卷在孩子身上。
❺ 有一个python的题,请教一下大家。是英文的。
好像是写一个handler,要把上面提到的所有exception都囊括进去
❻ 这个python题目怎么写
a = input(' 请输入一个英文字母:').lower()
if a == 'z':
b = 'a'
else:
b = chr(ord(a)+1)
print('字母'+a+'下一个字母为:',b)
❼ 求大神,问个Python英语题
Given dictionaries, d1 and d2, create a new dictionary with the following property: for each entry (a, b) in d1, if a is not a key of d2 (i.e., not a in d2) then add (a,b) to the new dictionary for each entry (a, b) in d2, if a is not a key of d1 (i.e., not a in d1) then add (a,b) to the new dictionary For example, if d1 is {2:3, 8:19, 6:4, 5:12} and d2 is {2:5, 4:3, 3:9}, then the new dictionary should be {8:19, 6:4, 5:12, 4:3, 3:9} Associate the new dictionary with the variable d3
❽ python编程之两个文件,英文原题,抓狂中,求好心人帮助解答
这道题的关键是acronym这个单词,在这里意思是首字母缩写,比如常见的most valuable player的acronym就是MVP,还有VIP等等
然后题目的意思就是让用户输入两个文件的名字,然后用一个函数把第一个文件中的词组变成首字母缩写的形式再写入到第二个文件中,那我们要完成的主要就是那个函数.
那我们就把它命名为acronym好了,参数是一个string(字符串),返回值为它的acronym(首字母缩写)
下面是我的代码
print "Please input the filename to read"
f2read=raw_input()
print "Please input the filename to write"
f2write=raw_input()
f1=file(f2read,'r')
f2=file(f2write,'w')
def acronym(string):
s=''
p=string.split(' ')
for word in p:
s+=(word[0].upper()) #一般的首字母缩写都是大写的,所以用upper()这个函数
return s
lines=f1.readlines()
for line in lines:
f2.write(acronym(line))
f2.write('\n')
f2.close()
f1.close()
我测试后通过了。
若有疑问随时找我,蟒蛇小组祝您编程愉快!
❾ 刚学python出现个小问题:invalid literal for int() with base 10:
异常出现的直接原因即是,对于一个浮点数的字符('12.3'),直接使用 int 进行强制类型转换:
>>> int('1.5')
ValueError: invalid literal for int() with base 10: '1.5'>>> int('1.0')
ValueError: invalid literal for int() with base 10: '1.0'1234
也即,使用 int 对一个字符类型的数据进行强制类型转换时,要求输入的字符类型只能为整数,不能为浮点数。
如果非要整数浮点数一起输入,或者可以换成下面做法
a=float(input())
这样,不管你输的是整数还是浮点都可以通过.可是,切记,其它字符比如abc之类的,还是不行哦!
❿ python怎么念 英语python怎么念
1、python英[ˈpaɪθən]美[ˈpaɪθɑːn],n.蟒蛇; 蟒; 蚺蛇。
2、[例句]The participants goal: consume as many insects and worms as they could to take home a$ 850 python.比赛共吸引二三十人参加,生吃蟑螂和虫子最多者夺冠,奖品是一条价值850美元的大蟒蛇。