小编jul*_*ria的帖子

使用正则表达式识别字符的重复

我想找到重复的个性,其中角色重复3次或更多次."444","sss"并且"------"应该被识别,而不"dd"应该被识别.

我遇到了之前的StackOverflow问题,它提供了以下解决方案:

regexp = re.compile(r"(.)\1")
Run Code Online (Sandbox Code Playgroud)

但是,这标识了相同字符的2次或更多次重复.我试过(r"(.)\{3,}")哪个不起作用,(r"(.)\3")哪个出错了.有人可以给我正确的正则表达式吗?

python regex

2
推荐指数
1
解决办法
1703
查看次数

从第一个非数字元素中提取所有元素

我想从第一个非数字元素中提取列表的所有元素:

input = [u'12', u'23', u'hello', u'15', u'guys']
Run Code Online (Sandbox Code Playgroud)

我想要:

output = [u'hello', u'15', u'guys']
Run Code Online (Sandbox Code Playgroud)

非pythonic版本将是:

input_list = [u'12', u'23', u'hello', u'15', u'guys']

non_numeric_found=False
res = []
for e in input_list:
    if not non_numeric_found and e.isnumeric():
        continue
    non_numeric_found=True
    res.append(e)
Run Code Online (Sandbox Code Playgroud)

有什么建议可以更好地实现这个?

python list-comprehension

2
推荐指数
1
解决办法
168
查看次数

在掷骰子游戏中记录输赢

所以我必须创建一个掷骰子游戏,考虑到作业的投注.到目前为止,我的代码的工作原理是骰子卷是正确的,其他的小花絮也是要求的.但是现在我不知道如何将每个游戏记录为玩家或计算机的输赢,以便将底池添加到赢家的钱中.我意识到我的代码是一半,没有完成,并没有按原样运行,但我真的需要一些人的帮助.谢谢,麻烦您了.以下是我的任务的更具体方向:

http://www.ics.uci.edu/~kay/courses/i42/hw/labA.html

import random

def craps():
    print("Welcome to Sky Masterson's Craps Game")
    handle_commands()

def handle_commands():  # Collection -> Collection (plus interaction)
    """ Display menu to user, accept and process commands
    """

    playerInitial = 500
    compInitial = 500

    MENU = "How much would you like to bet?: " 
    while True:
        bet = float(input(MENU))
        if bet <= playerInitial:
            human_game()           
        elif bet > playerInitial:
            print("Sorry, you can't bet more than you have")

def handle_commands2():


MENU2 = "Would you like to play again? (y …
Run Code Online (Sandbox Code Playgroud)

python

2
推荐指数
1
解决办法
982
查看次数

多个Dicts w /同一组键

如果我有多个具有相同密钥集(并且几乎相同的值)的dicts,那么这两个dicts是否具有相同的条目顺序?或者哈希的过程不是那么可预测的?

python

2
推荐指数
1
解决办法
79
查看次数

将int数组转换为字符串的最佳方法是什么?

我想将一个int数组(像这样[1, 1, 2, 1])转换为字符串("1121").

什么是最好的(最pythonic)方式?

我总是可以这样做,然后删除额外的括号:

>>> str([1, 2, 1, 1])
'[1, 2, 1, 1]'
Run Code Online (Sandbox Code Playgroud)

或者我可以这样做:

s = ""
for i in [1, 2, 1, 1]:
    s += s(i)
Run Code Online (Sandbox Code Playgroud)

但这两种方法都有点不稳定.有没有更好的方法呢?

为了记录,我自然对所有版本的Python感兴趣,但我正在研究py2.7并且更喜欢使用这个版本的答案.

python python-2.7

2
推荐指数
2
解决办法
156
查看次数

在Python中传递变量

我一直在网上搜索一段时间,似乎找不到任何东西.我基本上学习了几种语言,我只是想用不同的语言重新创建一个程序.

def read_one_file():
    f = open('C:\Python27\inventory.dat', 'r')
    invid = f.readline()
    stock = f.readline()
    published = f.readline()
    price = f.readline()
    invtype = f.readline()
    title = f.readline()
    author = f.readline()
    return invid, stock, published, price, invtype, title, author

read_one_file()

print "Update Number In Stock"
print "----------------------"
print "Item ID: ", invid
Run Code Online (Sandbox Code Playgroud)

基本上我是在尝试读取文件,将数据吸收到变量中然后将这些变量传递给main(类?).当我归还它们时,它们仍然无法打印.当我在read_one_file之外初始化它们时,它们仍然没有返回正确的东西.

python

2
推荐指数
2
解决办法
967
查看次数

"".join(list)如果list包含python中的嵌套列表?

我知道"".join(list)将列表转换为字符串,但如果该列表包含嵌套列表怎么办?当我尝试它时返回一个TypeError由于意外的列表类型.我猜测错误处理是可能的,但到目前为止,我的尝试都没有结果.

python

2
推荐指数
2
解决办法
1648
查看次数

如果是一个列表(我想在列表中的元素中添加一些内容)Python

正如主题所述:

list = ["a", "b"]

element = "ac"
Run Code Online (Sandbox Code Playgroud)

我可以使用:

if element in list: 
Run Code Online (Sandbox Code Playgroud)

如果element等于(list +"c")中的元素

伪代码到我想要实现的目标:

if element in (list+c)
Run Code Online (Sandbox Code Playgroud)

在python中获取此行为的最佳方法是什么?

编辑:我知道有很多方法可以解决这个问题,但可以像上面的代码一样在一行中完成.

python syntax if-statement

2
推荐指数
1
解决办法
203
查看次数

监控程序崩溃

我目前正在使用Python模块Spynner来自动执行一些Web任务.我遇到了一个问题,虽然由于某种原因,该过程只是停止移动,冻结但仍然响应Windows.

我想要做的是设置某种形式的监视器来检查并查看是否发生这种情况,然后重新启动该过程.我在考虑可能监视程序的终端输出,如果它在一定时间后停止推送数据,它会杀死程序并重新启动.

我知道如何杀死程序并再次运行它,只需使用操作系统和子进程,但我不知道如何设置监视终端是否停止在特定时间内发送数据.

python crash subprocess spynner

2
推荐指数
1
解决办法
1622
查看次数

将英里转换为公里时出错

我正在尝试学习python,并试图创建一个简单的公式,将里程转换为公里并返回一些带有转换的文本.

这就是我所拥有的:

def mile(x):
    z = x * 1.609344
    print "%.2f" % z

x = float(raw_input("How many miles are you traveling? "))  

z = mile(x)

print "That's about % kilometers." % z
Run Code Online (Sandbox Code Playgroud)

有人可以解释为什么这不起作用?我绝对可以设置里程功能来打印转换句子,但我不想这样做.

python

2
推荐指数
1
解决办法
2596
查看次数