相关疑难解决方法(0)

更改字符串中的一个字符?

Python中替换字符串中字符的最简单方法是:

text = "abcdefg";
text[1] = "Z";
           ^
Run Code Online (Sandbox Code Playgroud)

python string

345
推荐指数
9
解决办法
67万
查看次数

为什么我们需要Python中的元组(或任何不可变数据类型)?

我已经阅读了几个python教程(Dive Into Python,一个),以及Python.org上的语言参考 - 我不明白为什么语言需要元组.

与列表或集合相比,元组没有方法,如果我必须将元组转换为集合或列表以便能够对它们进行排序,那么首先使用元组有什么意义呢?

不变性?

为什么有人关心变量是否存在于内存中的不同位置而不是最初分配的位置?这整个Python的不变性业务似乎过分强调.

在C/C++中,如果我分配一个指针并指向一些有效的内存,我不关心地址的位置,只要在我使用它之前它不是null.

每当我引用该变量时,我都不需要知道指针是否仍然指向原始地址.我只是检查null并使用它(或不使用).

在Python中,当我分配一个字符串(或元组)将其分配给x时,然后修改字符串,为什么我关心它是否是原始对象?只要变量指向我的数据,那就重要了.

>>> x='hello'
>>> id(x)
1234567
>>> x='good bye'
>>> id(x)
5432167
Run Code Online (Sandbox Code Playgroud)

x 仍然引用我想要的数据,为什么有人需要关心它的id是相同还是不同?

python tuples

138
推荐指数
7
解决办法
4万
查看次数

python中最有效的字符串连接方法是什么?

有没有在Python任何有效的质量字符串连接方法(如StringBuilder的 C#或StringBuffer的在Java中)?我在这里找到了以下方法:

  • 使用简单连接 +
  • 使用字符串列表和join方法
  • 使用UserString来自MutableString模块
  • 使用字符数组和array模块
  • 使用cStringIO来自StringIO模块

但是,您的专家使用或建议了什么?为什么?

[ 这里的相关问题 ]

python string

131
推荐指数
7
解决办法
10万
查看次数

Python字符串不是不可变的吗?那为什么+""+ b有效呢?

我的理解是Python字符串是不可变的.

我尝试了以下代码:

a = "Dog"
b = "eats"
c = "treats"

print a, b, c
# Dog eats treats

print a + " " + b + " " + c
# Dog eats treats

print a
# Dog

a = a + " " + b + " " + c
print a
# Dog eats treats
# !!!
Run Code Online (Sandbox Code Playgroud)

Python不应该阻止这项任务吗?我可能错过了一些东西.

任何的想法?

python string immutability mutability

95
推荐指数
9
解决办法
11万
查看次数

替换某个索引中的字符

如何从特定索引替换字符串中的字符?例如,我想从字符串中获取中间字符,如abc,如果字符不等于用户指定的字符,那么我想替换它.

这样的事可能吗?

middle = ? # (I don't know how to get the middle of a string)

if str[middle] != char:
    str[middle].replace('')
Run Code Online (Sandbox Code Playgroud)

python string python-3.x

20
推荐指数
4
解决办法
7万
查看次数

Python:如何将值设置为列表元素

我有一个列表,比如命名mac,它可以节省6个字节的mac地址.我想将最后一个字节设置为0,然后我使用:

mac[5] = 0
Run Code Online (Sandbox Code Playgroud)

但它给了我错误:

TypeError: 'str' object does not support item assignment
Run Code Online (Sandbox Code Playgroud)

如何解决这个错误?

python

0
推荐指数
1
解决办法
238
查看次数

Python初学者在这里:TypeError:'str'对象不支持项目分配

我是几天前才刚开始使用python进行编程的,之前没有编程经验。

我一直在关注在线教程,并决定通过制作类似hang子手的游戏来挑战自己。我试图做到这一点,以便猜测替换隐藏单词中字母的位置,但是python返回此错误。现在,该单词称为name,并且hidden_​​name只是#的长度相同。

    name = input ("what is your name ::")
    hidden_name = ("#" * len(name))
    print (hidden_name)

    guess = input ("Guess a letter ::")
    def guess_update(guess, name, hidden_name):
        right = guess in name 
        i = 0
        for c in name:
            if c == guess:
                hidden_name[i] = c
            i += 1
    if guess in name:
        guess_update(guess, name, hidden_name)
        print ("Your progess is ::", hidden_name)
Run Code Online (Sandbox Code Playgroud)

感谢您帮助这个新手:)

python

0
推荐指数
1
解决办法
2918
查看次数

标签 统计

python ×7

string ×4

immutability ×1

mutability ×1

python-3.x ×1

tuples ×1