Hướng dẫn how to take special character input in python - cách nhập ký tự đặc biệt trong python

Nếu người dùng nhập một chuỗi chứa ký tự thoát (ví dụ: "Ví dụ \" hoặc "C: \ người dùng ...), tôi muốn chấp nhận chính xác như vậy. Nói cách khác, tôi đang cố gắng phá vỡ lỗi cú pháp ném Khi đầu vào như ở trên được xử lý.

Tôi cảm thấy như nó nên đơn giản, nhưng câu trả lời giúp tôi vượt qua. Bất kỳ trợ giúp?

Chỉnh sửa: Tôi đang ở trên Python 3

Đã hỏi ngày 19 tháng 3 năm 2013 lúc 21:46Mar 19, 2013 at 21:46

Hướng dẫn how to take special character input in python - cách nhập ký tự đặc biệt trong python

pipsqueaker117pipsqueaker117pipsqueaker117

2.2209 Huy hiệu vàng32 Huy hiệu bạc45 Huy hiệu Đồng9 gold badges32 silver badges45 bronze badges

3

Không sử dụng input(); sử dụng

>>> input('Please show me how this works: ')
Please show me how this works: This is \n how it works!
'This is \\n how it works!'
0 thay vào đó khi chấp nhận đầu vào chuỗi.

input() (Trên Python 2) cố gắng giải thích chuỗi đầu vào là Python,

>>> input('Please show me how this works: ')
Please show me how this works: This is \n how it works!
'This is \\n how it works!'
0 không cố gắng giải thích văn bản, bao gồm cả việc không cố gắng giải thích
>>> input('Please show me how this works: ')
Please show me how this works: This is \n how it works!
'This is \\n how it works!'
3 BackSlashes dưới dạng trình tự thoát:

>>> raw_input('Please show me how this works: ')
Please show me how this works: This is \n how it works!
'This is \\n how it works!'

Trên Python 3, chỉ sử dụng input() (đó là ____10 của Python 2 được đổi tên); Trừ khi bạn cũng sử dụng

>>> input('Please show me how this works: ')
Please show me how this works: This is \n how it works!
'This is \\n how it works!'
6, nó sẽ không diễn giải mã thoát:

>>> input('Please show me how this works: ')
Please show me how this works: This is \n how it works!
'This is \\n how it works!'

Đã trả lời ngày 19 tháng 3 năm 2013 lúc 21:48Mar 19, 2013 at 21:48

Martijn Pieters ♦ Martijn PietersMartijn Pieters

988K274 Huy hiệu vàng3887 Huy hiệu bạc3244 Huy hiệu đồng274 gold badges3887 silver badges3244 bronze badges

2

Nếu bạn đang sử dụng Python 2.7, hãy sử dụng raw_input (), chấp nhận chuỗi với các ký tự đặc biệt.

Chương trình mẫu

$vi demo.py

str1=raw_input("Enter the file with full path : ")

print "Given Path is : ",str

save and quit from vi editor

Output 

$python demo.py

Enter the path :/home/ubuntu/deveops

Given path is  :  /home/ubuntu/deveops

$ python demo.py

Enter the path :\home\ubuntu\deveops

Given path is  :  \home\ubuntu\deveops

Nếu bạn đang sử dụng python3 sử dụng input () chấp nhận chuỗi với ký tự đặc biệt vì python3 không có chức năng raw_input ()

$vi demo1.py

 str1=input("Enter the file with full path : ")

 print ("Given Path is : ",str1)

save and quit from vi editor

Output

$python demo1.py

Enter the path :/home/ubuntu/deveops

Given path is  :  /home/ubuntu/deveops


$ python demo1.py

Enter the path :\home\ubuntu\deveops

Given path is  :  \home\ubuntu\deveops

Đã trả lời ngày 14 tháng 1 năm 2018 lúc 5:53Jan 14, 2018 at 5:53

0

Khi xử lý đầu vào, sử dụng hàm

>>> input('Please show me how this works: ')
Please show me how this works: This is \n how it works!
'This is \\n how it works!'
6. Chuyển đầu vào vào hàm
>>> input('Please show me how this works: ')
Please show me how this works: This is \n how it works!
'This is \\n how it works!'
6 như một cuộc tranh luận. Ví dụ: Python 3

x=input()
x=eval(x)

Hoặc

x = eval ( input() )
input the following value:
\N{superscript two}

print ( x )

Đầu ra:

>>> input('Please show me how this works: ')
Please show me how this works: This is \n how it works!
'This is \\n how it works!'
9:
>>> input('Please show me how this works: ')
Please show me how this works: This is \n how it works!
'This is \\n how it works!'
9

Hướng dẫn how to take special character input in python - cách nhập ký tự đặc biệt trong python

Aphillips

1.1358 Huy hiệu bạc17 Huy hiệu đồng8 silver badges17 bronze badges

Đã trả lời ngày 28 tháng 1 năm 2020 lúc 17:38Jan 28, 2020 at 17:38

In ("Các nhãn hiệu là:", Dấu hiệu).

Làm cách nào để in các ký tự đặc biệt trong Python?
Try to set 'stty erase ^H' in your terminal.

Sử dụng repr () để in các ký tự đặc biệt gọi repr (chuỗi) để trả về chuỗi với các ký tự đặc biệt thoát ra.

Câu trả lời được đề xuất
Try again using 'stty erase Ctrl-v'
Note: Ctrl-v are 2 keys being pressed together, then release both keys and press "backspace".

Sử dụng repr () để in các ký tự đặc biệt gọi repr (chuỗi) để trả về chuỗi với các ký tự đặc biệt thoát ra.

Câu trả lời được đề xuất

Hướng dẫn how to take special character input in python - cách nhập ký tự đặc biệt trong python

11 năm trước

Làm cách nào để in các ký tự đặc biệt trong Python?
Try to set 'stty erase ^H' in your terminal.

Hướng dẫn how to take special character input in python - cách nhập ký tự đặc biệt trong python

Mr TK0 Newbie poster 0 Newbie Poster

11 năm trước

Hoặc sử dụng một cái gì đó như EasyGui hoặc Tkinter.

Hướng dẫn how to take special character input in python - cách nhập ký tự đặc biệt trong python

11 năm trước

Câu trả lời được đề xuất
Try again using 'stty erase Ctrl-v'
Note: Ctrl-v are 2 keys being pressed together, then release both keys and press "backspace".

Hướng dẫn how to take special character input in python - cách nhập ký tự đặc biệt trong python

Điều này có thể là do tài sản thiết bị đầu cuối của bạn. Cố gắng đặt 'stty erase ^h' trong thiết bị đầu cuối của bạn. 1,391 Programming Explorer Team Colleague

11 năm trước

Hoặc sử dụng một cái gì đó như EasyGui hoặc Tkinter.

Được chỉnh sửa 11 năm trước bởi Woooee vì: N/A

Tôi đang viết một chương trình CL yêu cầu một bình luận được người dùng nhập, tuy nhiên các vấn đề phát sinh khi ai đó mắc lỗi khi vào bình luận nói.

comment = raw_input(Enter comment: )

Đầu vào của người dùng: Archie ^? Ve kiểm tra, ở đâu ^? có nghĩa là một backspace để thoát khỏi một lỗi chính tả.

Vì vậy, có một cách để có được đầu vào cho phép lỗi người dùng, vì vậy tôi không nhận được những thứ như "lưu trữ thử nghiệm"

Nếu hệ điều hành của bạn là Linux, bạn có thể cố gắng thêm

$vi demo.py

str1=raw_input("Enter the file with full path : ")

print "Given Path is : ",str

save and quit from vi editor

Output 

$python demo.py

Enter the path :/home/ubuntu/deveops

Given path is  :  /home/ubuntu/deveops

$ python demo.py

Enter the path :\home\ubuntu\deveops

Given path is  :  \home\ubuntu\deveops
0 cho phép chỉnh sửa dòng, vào chương trình của bạn. Trong Windows, có sự thay thế cho mô -đun Readline nhưng tôi đã không kiểm tra chúng (http://ipython.scipy.org/moin/pyreadline/intro chẳng hạn. Nếu không, Google là bạn của bạn)

Được chỉnh sửa 11 năm trước bởi Gribouillis vì: N/A

Hướng dẫn how to take special character input in python - cách nhập ký tự đặc biệt trong python

woooee814 gần một maven đăng 814 Nearly a Posting Maven

11 năm trước

Hoặc sử dụng một cái gì đó như EasyGui hoặc Tkinter.

import easygui

""" test of multi-enter box
"""

def multeasygui_date() :
   title = "Date"
   msg = "Enter Date"
   fieldNames = ["mm","dd","ccyy"]
   fieldValues = []  # we start with blanks for the values
   fieldValues = easygui.multenterbox(msg,title, fieldNames, fieldValues )

   #----------------------------------------------------------------
   # from here down is basically the same for all easyGUI programs
   #----------------------------------------------------------------
   # data has been entered and button clicked
   # make sure that none of the fields was left blank
   while 1:
         if type(fieldValues) == None:
            fieldValues = [ -1, -1, -1 ]
	    break
         errmsg = ""
         for x in range(len(fieldNames)):
            if fieldValues[x].strip() == "":
               errmsg = errmsg + ('"%s" is a required field.\n\n' % fieldNames[x])
         if errmsg == "": 
            break # no problems found
         fieldValues = easygui.multenterbox(errmsg, title, fieldNames, fieldValues)
   return fieldValues[0], fieldValues[1], fieldValues[2]

##===================================================================
if "__main__" == __name__ :
   mm, dd, ccyy = multeasygui_date()
   print mm, dd, ccyy

Được chỉnh sửa 11 năm trước bởi Woooee vì: N/A

Hướng dẫn how to take special character input in python - cách nhập ký tự đặc biệt trong python

Mr TK0 Newbie poster 0 Newbie Poster

11 năm trước

Hoặc sử dụng một cái gì đó như EasyGui hoặc Tkinter.

Được chỉnh sửa 11 năm trước bởi Woooee vì: N/A

Mr TK0 Newbie poster

CGHTKH: Cảm ơn bạn rất nhiều! Điều đó đã có nó đi!

Gribouillis: Chúc mừng tôi sẽ xem xét điều đó.

Woooee: Xin lỗi nhưng tôi không tìm kiếm giải pháp GUI cho một công cụ dòng lệnh, nhưng dù sao cũng cảm ơn bạn.

Làm thế nào để bạn chấp nhận các nhân vật đặc biệt trong Python?

Để chèn các ký tự là bất hợp pháp trong một chuỗi, hãy sử dụng một ký tự thoát. Một nhân vật thoát là một dấu gạch chéo ngược \ theo sau là nhân vật bạn muốn chèn.use an escape character. An escape character is a backslash \ followed by the character you want to insert.

Làm thế nào để bạn đề cập đến một nhân vật đặc biệt trong Python?

Trong các chuỗi Python, dấu gạch chéo ngược "\" là một nhân vật đặc biệt, còn được gọi là nhân vật "Escape".Nó được sử dụng để thể hiện các ký tự khoảng trắng nhất định: "\ t" là một tab, "\ n" là một dòng mới và "\ r" là một sự trở lại vận chuyển.Ngược lại, tiền tố một ký tự đặc biệt với "\" biến nó thành một ký tự thông thường.the backslash "\" is a special character, also called the "escape" character. It is used in representing certain whitespace characters: "\t" is a tab, "\n" is a newline, and "\r" is a carriage return. Conversely, prefixing a special character with "\" turns it into an ordinary character.

Làm thế nào để bạn lấy đầu vào cụ thể trong Python?

Ví dụ - 2..
# Chương trình Python hiển thị ..
# Sử dụng đầu vào ().
name = input ("Nhập tên của bạn:") # Chuỗi đầu vào ..
Age = int (đầu vào ("Nhập tuổi của bạn:")) # Đầu vào số nguyên ..
Marks = float (input ("Nhập điểm của bạn:")) # đầu vào float ..
in ("Tên là:", tên).
In ("Tuổi là:", tuổi).
In ("Các nhãn hiệu là:", Dấu hiệu).

Làm cách nào để in các ký tự đặc biệt trong Python?

Sử dụng repr () để in các ký tự đặc biệt gọi repr (chuỗi) để trả về chuỗi với các ký tự đặc biệt thoát ra. Call repr(string) to return string with special characters escaped.