21天学Python --- 打卡11:Python基础
1.if name == ‘main’:
python文件通常有两种启动方法,一个是作为脚本直接执行。第二个是import到其它脚本被调用执行。
if name == ‘main’:
就是直接执行,语句之前和之后的代码都执行。
import执行
则是只执行语句之前的代码。
2.键盘输入
price_apple = input("请输入苹果价格")
price = float(price_apple)
weight_apple = input("请输入苹果重量")
weight = float(weight_apple)
money = price * weight
print(money)
3.Print
print(*objects, sep=’ ‘, end=’\n’, file=sys.stdout, flush=False)
objects
– 复数,表示可以一次输出多个对象。输出多个对象时,需要用 , 分隔。sep
– 用来间隔多个对象,默认值是一个空格。end
– 用来设定以什么结尾。默认值是换行符 \n,我们可以换成其他字符串。file
– 要写入的文件对象。flush
– 输出是否被缓存通常决定于 file,但如果 flush 关键字参数为 True,流会被强制刷新。
>>> print("www","runoob","com",sep=".") # 设置间隔符
www.runoob.com
4.Loop
row = 1
while row <= 5:
print("*" * row)
row += 1
---------------------------------
row1 = 1
while row1 <= 5:
#print("*", end="")
col = 1
while col <= row1:
print("*", end="")
col += 1
print("")
row1 += 1
---------------------------------
row2 = 1
while row2 <= 9:
col2 = 1
while col2 <= row2:
print("%d * %d = %d" % (col2,row2,row2*col2),end="\t")
col2 += 1
print("")
row2 += 1
---------------------------------
a = int(input(">>>"))
c = a
b = a
for i in range(1,a+1):
print(" "*(c-1),"*"*(2*i-1))
c -= 1
if(i == a):
for y in range(1,a):
print(" "*y,"*"*(2*b-3))
b -= 1
5.简单的打印图形
#打印空心菱形
num = 10
for x in range(-num,num):
for y in range(-num,num):
# print(x,y)
if abs(x)+abs(y) == num -1:
print("*",end=' ')
else:
print(" ",end=' ')
print()
#打印空心正三角形
num = 10
for x in range(-num,0):
for y in range(-num,num):
# print(x,y)
if abs(x)+abs(y) == num -1:
print("*",end=' ')
else:
print(" ",end=' ')
print()
for i in range(num):
print(' ',end = '')
print("*",end= ' ')
#打印实心菱形
num = 10
for x in range(-num,num):
for y in range(-num,num):
# print(x,y)
if abs(x)+abs(y) <= num -1:
print("*",end=' ')
else:
print(" ",end=' ')
print()
#打印实心正三角形
num = 10
for x in range(-num,0):
for y in range(-num,num):
# print(x,y)
if abs(x)+abs(y) <= num -1:
print("*",end=' ')
else:
print(" ",end=' ')
print()
for i in range(num):
print(' ',end = '')
print("*",end= ' ')
6.数字类型
int
(整数), 如 1, 只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。
bool
(布尔), 如 True。
float
(浮点数), 如 1.23、3E-2
complex
(复数), 如 1 + 2j、 1.1 + 2.2j
7.字符类型
- Python 中单引号 ’ 和双引号 " 使用完全相同。
- 使用三引号(‘’’ 或 “”")可以指定一个多行字符串。
- 转义符 \。
- 反斜杠可以用来转义,使用 r 可以让反斜杠不发生转义。 如 r"this is a line with \n" 则 \n 会显示,并不是换行。
- 按字面意义级联字符串,如 "this " "is " “string” 会被自动转换为 this is string。
- 字符串可以用 + 运算符连接在一起,用 * 运算符重复。
- Python 中的字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始。
str='123456789'
print(str) # 输出字符串
print(str[0:-1]) # 输出第一个到倒数第二个的所有字符
print(str[0]) # 输出字符串第一个字符
print(str[2:5]) # 输出从第三个开始到第五个的字符
print(str[2:]) # 输出从第三个开始后的所有字符
print(str[1:5:2]) # 输出从第二个开始到第五个且每隔一个的字符(步长为2)
print(str * 2) # 输出字符串两次
print(str + '你好') # 连接字符串
print('------------------------------')
print('hello\nrunoob') #\n 换行
print(r'hello\nrunoob') # 在字符串前面添加一个 r,表示原始字符串,不会发生转义
print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=“”
x="a"
y="b"
# 换行输出
print( x )
print( y )
# 不换行输出
print( x, end=" " )
print( y, end=" " )
print()
8.if
9.循环
- while
- for
- range
10.可更改(mutable)与不可更改(immutable)对象
不可变类型
:变量赋值 a=5 后再赋值 a=10,这里实际是新生成一个 int 值对象 10,再让 a 指向它,而 5 被丢弃,不是改变 a 的值,相当于新生成了 a。可变类型
:变量赋值 la=[1,2,3,4] 后再赋值 la[2]=5 则是将 list la 的第三个元素值更改,本身la没有动,只是其内部的一部分值被修改了。
11.函数
12.模块
- lmport
- from … import