clwn.net
当前位置:首页 >> python排序输出英文字符串 >>

python排序输出英文字符串

运用 for 循环可以做到.以下是一个例子 s = 'you are beautiful' result = '' for i in range(len(s)): if i == 0: result += s[0].upper() elif s[i-1] == ' ': result += s[i].upper() else: result += s[i] print(result)

print( ''.join( sorted( a ,key = lambda x : ord( x.lower( ) ) * 2 + x.islower( ) ) ) )

刚才试了一下,字符串是可以直接比较的,但是要区分大小写.'a''B'所以首先都变成小写吧.然后sorted_string=reduce(lambda x,y:x>y and y+x or x+y,lowered_string )这样会失去原字符串的大小写.如果想保留大小写, 让他们等效,恐怕需要专门定义一个函数来比较, 一个lambda搞不定.------------------看错了,是排序英文名,也是同样的方法,把每个名字第一字符拿出来比较就行了.

s=input("please inupt string")print(s.isdigit()) #用isdigit函数判断是否数字print(s.isalpha()) #isalpha判断是否字母print(not (s.isalpha() or s.isdigit()) and s.isalnum()) #isalnum判断是否数字和字母的组合

用一个字符一个字符去判断的话估计是很复杂,用正则表达式去判断应该会快点.

中文拼音,需要拼音库,比如pinyin.py..有了他排序就不说了吧

文档read后是以字符串格式储存下来的,可以先调用string类中的split()函数将单词先一个个分开来,然后再将split()后生成的列表用list的方法sort()即可.

import nltkfile_b = open('a.txt', 'r')tokens = nltk.word_tokenize(file_b)fdist1 = nltk.FreqDist(tokens)for key,val in sorted(fdist1.iteritems())[:5]: print ("{1}: {0}".format(key, round(val / len(tokens), 2)))

txt = 'a b c de fgh' arr = txt.split() print('单词数:', len(arr), arr)# 输出结果:# 单词数: 5 ['a', 'b', 'c', 'de', 'fgh']

网站首页 | 网站地图
All rights reserved Powered by www.clwn.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com