1.1 输入输出
print("hello python")
print("a", "b", "c")
print("hello python", end='')
a = int(input('请输入一个数字:')) # input返回值类型是字符串
print(a)
print(type(a)) # type函数:查看a的数据类型
b = input("输入一个数字:")
print(b+4) # 报错(字符串不能与数字相加)
运行结果:
hello python
a b c
hello python请输入一个数字:20
20
<class 'int'>
输入一个数字:20
Traceback (most recent call last):
File "H:/hobby/python/python/helloPython.py", line 11, in <module>
print(b+4) # 报错
TypeError: can only concatenate str (not "int") to str
1.2 格式化输出
a = 'kitty'
print('hello,{}'.format(a))
b = 25
c = '中国人'
print('我今年{}岁,我是{}'.format(b,c))
d = 0.345
print('d保留两位小数是:{:.2f}'.format(d)) # d保留两位小数
运行结果:
hello,kitty
我今年25岁,我是中国人
d保留两位小数是:0.34
1.3 注释
单行: #
多行: '''或"""
1.4 缩进
# 相同缩进语句 属于同一个语句块
for i in range(10):
print(i, end=' ')
print(i, end=' ')
print()
for i in range(10):
print(i,end=' ')
print(i)
a = 0;
if a == 1:
print(a)
print("no")
def add():
a = 1
b = 3
return a+b
运行结果:
0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9
0 1 2 3 4 5 6 7 8 9 9
no
1.5 操作符
print(10/3)
print(10//3) #整除
算数运算符 + - * / // % **(幂运算)
比较运算符 > < >= == !=
逻辑运算符 or and not
赋值运算符 = += %= -=
成员运算符 in not in
print('hello' in 'hello word')
print('hello' not in 'hello word')
1.6 变量名规范
_a = 1 变量
a = 1
def get_date_from_model(): 函数
class MyClassNumber: 类
1.7 数据类型
# 1)Number数字(不可变)
# 2)String字符串(不可变)
# 3)List列表
# 4)Tuple元组(不可变)
# 5)Set集合
# 6)Dictionary字典
# 不可变与可变类型对比
a = 343
print(id(a))
a=344
print(id(a)) # 两次输出a的id值是不同的
a = 'hello'
print(id(a))
a += 'world'
print(id(a)) # 两次输出a的id值是不同的
# 因为数字与字符串是不可改变的数据类型,所以改变值之后,就变成了另一个变量存放在另一个位置(变成另外一个变量)
a = [1, 2, 3]
print(a)
print(id(a))
a.append(4)
print(a)
print(id(a)) # 两次输出a的id值是相同的
# 因为列表是可改变的数据类型,所以改变值之后,还是存放在原来的地址(仍然是原来的那个变量)
# 数字:
a = input("输入第一个数字:")
b = input("输入第二个数字:")
print(a+b) # 输出34
运行结果:
3005260231728
3005260231760
3005260017072
3005260324784
[1, 2, 3]
3005258748424
[1, 2, 3, 4]
3005258748424
输入第一个数字:3
输入第二个数字:4
34
1.8 字符串
s0 = 'it\'s a dog'
s1 = "it's a dog"
print(s1)
s2 = "hello"
s3 = '''hello'''
# 三引号的两个作用:1、注释:函数注释、类的注释 2、字符串长字符保持格式
s4 = 'ssssssssssssssssssssssssssssssssssssssssssssss' \
'ssssssssss' \
'sss' \
's'
print(s4) # 打印出来为一行
s5 = '''
ssssssssssssssssssssssssssssssss
sssssssssssssssss
ssss
'''
print(s5) # 打印出来为多行
s6 = r"E:\soft\apache\ssss"
print(s6)
运行结果:
it's a dog
ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss
ssssssssssssssssssssssssssssssss
sssssssssssssssss
ssss
E:\soft\apache\ssss
1.9 字符串截取
# 字符串截取
# 格式:[start:end:step]
# [:] 提取从开头(默认位置0)到结尾(默认位置-1)的整个字符串
# [start:]从start提取到结尾
# [:end]从开头提取到end-1
# [start:end]从start提取到end-1
# [start:end:step]从start提取到end-1,每step个字符去一个
s = '欢迎来 到XX学院 学习python'
print(s[:])
print(s[2:])
print(s[-2:])
print(s[:-2]) #取不到-2
print(s[:3]) #取不到3
print(s[2:-1])
print(s[0:-1:2])
print(s[-1:0:-2])
print(s[::-1])
# step为正表示正序切片,为负表示逆序切片
运行结果:
欢迎来 到XX学院 学习python
来 到XX学院 学习python
on
欢迎来 到XX学院 学习pyth
欢迎来
来 到XX学院 学习pytho
欢来到X院学pto
nhy习 学X 迎
nohtyp习学 院学XX到 来迎欢
1.10 操作字符串函数
# 操作字符串函数
# 1、len(string)
# 2、replace(old,new[max])
# 3、split(str='')
# 4、strip(str):删除字符串两边空格
# 5、str.islower str是否为小写 str.isupper str是否为大写
# 6、str.lower str.upper 字符串转换为小写或大写
# 7、','.join['a', 'b', 'c']: 连接
s = '欢迎来 到XX学院 学习python'
print(s.replace('python', 'java'))
print(s.split())
name = input('请输入用户名:')
if len(name.strip()) >= 6:
print('ok')
else:
print('not ok')
a = ['hello', 'world', 'ok', 'good']
result = ''
for item in a:
result += item
result += ','
print(result)
print(','.join(a))
运行结果:
欢迎来 到XX学院 学习java
['欢迎来', '到XX学院', '学习python']
请输入用户名:LLLLeozi
ok
hello,world,ok,good,
hello,world,ok,good
练习一:
1、输入一个半径,计算出圆的面积和周长
2、输入两个数字a和b,计算a与b之和与a与b只差的成绩
3、输入两个数字a和b,计算出a的b次方再除以b取整后的值
from math import pi
r = float(input("请输入半径:"))
print(pi*r*r)
print(2*pi*r)
a = int(input("请输入数字a:"))
b = int(input("请输入数字b:"))
print((a+b)*(a-b))
c = int(input("请输入数字c:"))
d = int(input("请输入数字d:"))
mi = c**d;
print(mi//d)
运行结果:
请输入半径:2
12.566370614359172
12.566370614359172
请输入数字a:3
请输入数字b:4
-7
请输入数字c:5
请输入数字d:6
2604
练习二:
1. s = "'hello, world'",要求以-1为步长,将字符串内容去掉单引号后反序输出,显示结果为:dlrow ,olleh
2. 直接定义一个字符串'adc kdn lad',分别打印出以d分割的字符串的第二部分和第三部分。
3. 接收用户输入一个句子(只包含字母和空格),利用字符串方法将句子中的单词位置反转,单词用空格分割,单词之间只有一个空格,前后没有空格。比如,输入“hello xiao mi”-> 得到“mi xiao hello”
# 题目1
str1 = "'hello, world'"
print(str1.strip('\'')[::-1])
# 题目2
str2 = 'adc kdn lad'
print('以d分割字符串的第一部分:', str2.split('d')[1])
print('以d分割字符串的第二部分:', str2.split('d')[2])
# 题目3
# 方法一
str3 = input("请输入一个包含字母和空格的句子:")
str3 = str3.strip().split(' ')
# str3 = str3.split(' ')
for item in str3[::-1]:
print(item, end=' ')
# 方法二
# str3.reverse()
# print(str3)
# 方法三
# str3 = input("请输入一个包含字母和空格的句子:")
# print(' '.join(str3.split()[::-1]))
运行结果:
dlrow ,olleh
以d分割字符串的第一部分: c k
以d分割字符串的第二部分: n la
请输入一个包含字母和空格的句子: askdjaks askdj asd
asd askdj askdjaks