cho mình hỏi %r, %d, %s trong Python mỗi cái có ý nghĩa gì ạ? mình mới học nên không phân biệt được
Hỏi về %r, %d, ... trong python?
%d
thay thế cho một số
>>> print("mot so bat ki %d" %(15))
mot so bat ki 15
%s
thay thế cho một chuỗi
>>> print("mot chuoi bat ki %s" %("Phuoc"))
mot chuoi bat ki Phuoc
%r
thay thế cho cả chuỗi lần số
>>> print("so bang %r" %(15))
so bang 15
>>> print("chuoi bang %r" %("Phuoc"))
chuoi bang 'Phuoc'
một chút khác biệt ở chỗ thay cho chuỗi
print “How old are you?”,
age = raw_input()
print “How tall are you?”,
height = raw_input()
print “How much do yu weigh?”,
weight = raw_input()
print “So, you’re %r old, %r tall and %r heavy.” % (
age, height, weight)
tại sao khi in ra khúc cuối lại có dấu ’ ’ ạ
VD : So, you’re ‘17’…
Mặc định những gì raw_input đọc vào đều là string. Muốn thành int thì phải chuyển thành số.
%s: string thay thế dữ liệu dạng chuỗi
%d: integer d… thay thế dư liệu dạng sô nguyên
%r: raw thay thế cho dữ liệu dạng thô # dạng thô: dữ liệu nhâp với lệnh print để in ra màn hinh.
Vd ( Bạn muốn in ra : toi rat vi dai @
a_b = ' toi rat vi dai \\@ '
print a_b >>> toi rat vi dai \@
print '%r' %a_b >>> ' toi rat vi dai \\@ ' # giống như print ' toi rat vi dai \\@'
vây %r thay thế cho dữ liệu dạng thô bạn nhập vào để in ra màn hình. nhập vào làm sao thì nó in ra như vậy.
raw_input: nhập vào dữ liệu kiểu chuỗi. mặc định của python là chuỗi. bạn nhập vào 17 nó cũng hiểu là chuỗi 17 không phải số 17 nha.
vd
a_b = raw_input() >>> nhâp vào 17
print ‘%r’ %a_b >>> ‘17’ dữ liệu trả về dạng thô ‘17’ như khi bạn nhập print ‘17’. vì biến a_b chứa giá trị 17 kiểu chuỗi.
bạn so sánh :
a_b=17
print ‘%r’ %a_b >>> 17 dữ liêu dang thô 17 như print 17. biến a_b chứa 17 kiểu số nguyên