Hướng dẫn find index of space in string python - tìm chỉ mục của không gian trong chuỗi python

Tôi đang viết một chức năng cho một bài tập trong lớp CS. Nhưng tôi không biết tại sao tôi nhận được lỗi này: cùng một mã hoạt động mà không có chức năng. Tôi cố gắng tìm kiếm cách tìm một chỉ mục "khoảng trắng" trong một chuỗi nhưng tôi không thể tìm thấy bất kỳ. Mục đích của bài tập là trả về tên đầy đủ được gõ bởi người dùng xóa một chữ cái ngẫu nhiên khỏi cả tên và họ. (Đây là "giả sử" tên đầy đủ được gõ bởi người dùng chứa hai phần) Cảm ơn

Enter your Full name: Emily Watson
Traceback (most recent call last):
  File "cs_lec7_char_shuffle_ex.py", line 33, in 
    version1 = remove_two_letters(full_name)
  File "cs_lec7_char_shuffle_ex.py", line 16, in remove_two_letters
    gap_pos = full_name.find(" ")                    
AttributeError: 'NoneType' object has no attribute 'find'

***Repl Closed***

import random

def get_full_name():

    full_name = input("Enter your Full name: ")

def remove_two_letters(full_name):

    gap_pos = full_name.find(" ")                    
    name_length = len(full_name)                    

    first_name = full_name[0:gap_pos]               
    sur_name = full_name[gap_pos+1:name_length]

    first_random_pos = random.randrange(1,gap_pos)  
    sur_random_pos = random.randrange(gap_pos+1, name_length)

    first_name = first_name.replace(full_name[first_random_pos],"",1)    
    sur_name = sur_name.replace(full_name[sur_random_pos],"",1)         

    removed_name = first_name + " " + sur_name

    return removed_name

full_name = get_full_name()
version1 = remove_two_letters(full_name)

print(version1)

Hỏi ngày 16 tháng 10 năm 2015 lúc 8:18Oct 16, 2015 at 8:18

Hướng dẫn find index of space in string python - tìm chỉ mục của không gian trong chuỗi python

Newbie_AndroidNewbie_AndroidNewbie_Android

2252 Huy hiệu vàng3 Huy hiệu bạc12 Huy hiệu đồng2 gold badges3 silver badges12 bronze badges

Bạn đã xác định full_name bên trong không gian tên địa phương của get_full_name(), nếu bạn muốn sử dụng nó ở một nơi khác, bạn cần trả lại:

def get_full_name():

    full_name = input("Enter your Full name: ")
    return  full_name

Đó là những gì bạn đã có AttributeError vì chức năng của bạn không trả về không và bạn không truyền cho

def get_full_name():

    full_name = input("Enter your Full name: ")
    return  full_name
0.

Đã trả lời ngày 16 tháng 10 năm 2015 lúc 8:20Oct 16, 2015 at 8:20

Hướng dẫn find index of space in string python - tìm chỉ mục của không gian trong chuỗi python

1

>>> string_1 = "That's it"
>>> string_1.index(" ")
6

Đã trả lời ngày 16 tháng 10 năm 2015 lúc 8:20Oct 16, 2015 at 8:20

LaszlowatylaszlowatyLaszlowaty

1.2671 Huy hiệu vàng11 Huy hiệu bạc19 Huy hiệu đồng1 gold badge11 silver badges19 bronze badges

1

Hãy kiểm tra lỗi mà bạn đang nhận được:

AttributeError: 'NoneType' object has no attribute 'find'

Điều đó có nghĩa là bạn đang cố gắng truy cập thuộc tính

def get_full_name():

    full_name = input("Enter your Full name: ")
    return  full_name
1 trên một đối tượng loại
def get_full_name():

    full_name = input("Enter your Full name: ")
    return  full_name
2. Chúng ta hãy xem dòng tạo ra lỗi, như được chỉ ra trong StackTrace:

gap_pos = full_name.find(" ")

Thuộc tính tìm thấy đang được gọi trên đối tượng full_name. Do đó, chúng ta có thể kết luận rằng đối tượng full_name thuộc loại

def get_full_name():

    full_name = input("Enter your Full name: ")
    return  full_name
2.

Nếu chúng tôi theo dõi biến full_name trở lại thông qua mã gọi, chúng tôi thấy rằng nó được cho là được đặt bởi hàm get_full_name(), trên thực tế, sẽ trả về

def get_full_name():

    full_name = input("Enter your Full name: ")
    return  full_name
2 do không có câu lệnh
def get_full_name():

    full_name = input("Enter your Full name: ")
    return  full_name
9 rõ ràng.

Đã trả lời ngày 16 tháng 10 năm 2015 lúc 8:30Oct 16, 2015 at 8:30

dotancohendotancohendotancohen

28.7K33 Huy hiệu vàng133 Huy hiệu bạc192 Huy hiệu Đồng33 gold badges133 silver badges192 bronze badges

1

Lần tiếp theo, nếu bạn muốn một manh mối để biết điều gì là sai, bạn có thể sử dụng loại () để tìm ra rằng đây không phải là cùng loại giữa full_name đầu tiên của bạn và full_name thứ hai, vì vậy bạn chỉ cần trả lại biến của mình.

Tôi đã chạy bài kiểm tra cho bạn, và tôi đã có:

def get_full_name():

  full_name = input("Enter your Full name: ")
  print(type(full_name))


full_name = get_full_name()
print(type(full_name))

Đầu ra:



Đã trả lời ngày 16 tháng 10 năm 2015 lúc 8:34Oct 16, 2015 at 8:34

Hướng dẫn find index of space in string python - tìm chỉ mục của không gian trong chuỗi python

Làm thế nào để bạn tìm thấy chỉ mục của một không gian trong một chuỗi trong Python?

5 cách để tìm chỉ số của một chuỗi con trong chuỗi trong Python..
str.find().
str.rfind().
str.index().
str.rindex().
re.search().

Không gian có được tính là một chỉ số trong Python không?

Không gian có được tính là một chỉ số trong Python không?Do đó, mỗi ký tự (bao gồm khoảng trắng) sẽ được biểu diễn bằng cái được gọi là chỉ số.Một chỉ mục là vị trí của một mục cụ thể trong một tập dữ liệu.each character (whitespace included) will be represented by what is known as an index. An index is the location of a particular item within a data set.

Làm cách nào để tìm chỉ mục của một chuỗi?

Phương thức indexof () trả về vị trí của sự xuất hiện đầu tiên của (các) ký tự được chỉ định trong một chuỗi.Mẹo: Sử dụng phương thức LastIndexof để trả về vị trí của lần xuất hiện cuối cùng của (các) ký tự được chỉ định trong một chuỗi.. Tip: Use the lastIndexOf method to return the position of the last occurrence of specified character(s) in a string.

.Index làm gì trong Python?

Phương thức Python Index () giúp bạn tìm thấy vị trí chỉ mục của một phần tử hoặc một mục trong chuỗi ký tự hoặc danh sách các mục.Nó phun ra chỉ số thấp nhất có thể của phần tử được chỉ định trong danh sách.Trong trường hợp mục được chỉ định không tồn tại trong danh sách, một giá trị đã được trả về.helps you find the index position of an element or an item in a string of characters or a list of items. It spits out the lowest possible index of the specified element in the list. In case the specified item does not exist in the list, a ValueError is returned.