'~' có nghĩa là gì trong python?'~' có nghĩa là gì trong python?
tôi đã tìm thấy thông dịch viên BF này trong python một thời gian trước đây.
import sys
#c,i,r,p=0,0,[0]*255,raw_input()
c=0
i=0
p=raw_input()
r=[0]*255
while c<len(p):
m,n,u=p[c],0,r[i]
if m==">":i+=1
if m=="<":i-=1
if m=="+":r[i]+=1
if m=="-":r[i]-=1
if m==".":sys.stdout.write(chr(u))
if m=="[":
if ~u:
while 1:
m=p[c]
if m=="]":n-=1
if m=="[":n+=1
if ~n:break
c+=1
if m=="]":
if u:
while 1:
m=p[c]
if m=="]":n-=1
if m=="[":n+=1
if ~n:break
c-=1
c+=1
và tôi muốn biết những gì nó làm, vì tôi muốn thực hiện một trên ti của tôi 84 (và một PF một) BF
là http://en.wikipedia.org/wiki/Brainfuck và PF là một cái gì đó tương tự
Thật thú vị với tôi rằng trình thông dịch Python BF có các biến bí ẩn như vậy và được viết bằng cách sử dụng các cấu trúc Python không chuẩn. Rất nhiều trong tinh thần của BF, nhưng rất nhiều không theo tinh thần của Python. – Omnifarious
i phong cách mã hóa kỳ lạ thứ hai (như được dịch từ ngôn ngữ cấp thấp sang python?) Nhưng nó hoạt động - đã thử nghiệm nó với chương trình hello-world.btw, không thực hiện lệnh ',' (đầu vào) –
@Omnifarious - Nếu bạn đang viết bằng tinh thần của Python, bạn sẽ không viết một thông dịch viên BF. –